pmñ2025 f35502025-03-28T17:35:50-04:00pmviernes

[Leetcode] 1804. Implementar Trie II

Un trie (pronunciado como "try") o árbol de prefijos es una estructura de datos de árbol utilizada para almacenar y recuperar claves de manera eficiente en un conjunto de datos de cadenas. Hay varias aplicaciones de esta estructura de datos, como el autocompletado y el corrector ortográfico.

Implementar la clase Trie:

Trie() Inicializa el objeto trie.
void insert(String word) Inserta la cadena palabra en el trie.
int countWordsEqualTo(String word) Devuelve la cantidad de instancias de la cadena word en el trie.
int countWordsStartingWith(String prefix) Devuelve la cantidad de cadenas en el trie que tienen el prefijo de cadena como prefijo.
void erase(String word) Borra la cadena palabra del trie.

[Leetcode] 1804. Implementar Trie II Leer más »

Leetcode, artículo técnico

[LeetCode] 0020. Paréntesis válidos

Dada una cadena que contiene sólo los caracteres '(', ')', '{', '}', '[' y ']', determine si la cadena de entrada es válida.

Una cadena de entrada es válida si:

Los corchetes abiertos deben cerrarse con el mismo tipo de corchetes.
Los corchetes abiertos deben cerrarse en el orden correcto.
Cada corchete cerrado tiene un corchete abierto correspondiente del mismo tipo.

[LeetCode] 0020. Paréntesis válidos Leer más »

Leetcode, artículo técnico
Si la IA puede escribir programas más rápido que tú, ¿cómo podrán los ingenieros encontrar su nuevo puesto?

Si la IA puede escribir programas más rápido que tú, ¿cómo podrán los ingenieros encontrar su nuevo puesto?

Imagina este escenario: te sientas frente a tu computadora y describes la función que tienes en mente. Unos segundos después, la inteligencia artificial generará un fragmento de código ejecutable para usted, o incluso nacerá la aplicación completa. ¿Suena un poco mágico?
Este escenario ya no es una fantasía, sino una realidad que está sucediendo ahora. En los últimos años, la tecnología de codificación de IA ha aumentado rápidamente, transformándose gradualmente de un tema novedoso en las noticias tecnológicas a una herramienta importante para el trabajo de desarrollo diario. Desde GitHub Copilot hasta DeepSeek R1, la inteligencia artificial no solo ha cambiado la forma de programar, sino que también puede subvertir la dirección del desarrollo de toda la industria del software.
Entonces, ¿hasta qué punto se ha desarrollado la tecnología de codificación de IA? ¿Reemplazará el trabajo de los ingenieros? Como personas que trabajamos en la industria de la tecnología, ¿cómo debemos afrontar esta ola de avances tecnológicos? Este artículo analizará gradualmente en profundidad el origen, el estado actual, las aplicaciones prácticas, el impacto en la industria, el desarrollo futuro y cómo los profesionales de la industria tecnológica deben responder a la codificación de IA.

Si la IA puede escribir programas más rápido que tú, ¿cómo podrán los ingenieros encontrar su nuevo puesto? Leer más »

ingeniero de software,

[Leetcode] 0212. Búsqueda de palabras II

Dado un tablero mxn de caracteres y una lista de cadenas de palabras, devuelve todas las palabras del tablero.

Cada palabra debe construirse a partir de letras de celdas adyacentes secuencialmente, donde las celdas adyacentes están adyacentes horizontal o verticalmente. La misma celda de letra no puede usarse más de una vez en una palabra.

[Leetcode] 0212. Búsqueda de palabras II Leer más »

Leetcode, artículo técnico

[Leetcode] 0211. Diseño de estructura de datos para agregar y buscar palabras

Diseñe una estructura de datos que admita agregar nuevas palabras y descubrir si una cadena coincide con alguna cadena agregada previamente.

Implementar la clase WordDictionary:

WordDictionary() Inicializa el objeto.
void addWord(word) Agrega palabra a la estructura de datos, puede coincidir más tarde.
bool search(word) Devuelve verdadero si hay alguna cadena en la estructura de datos que coincide con palabra o falso en caso contrario. La palabra puede contener puntos '.' donde los puntos se pueden combinar con cualquier letra.

[Leetcode] 0211. Diseño de estructura de datos para agregar y buscar palabras Leer más »

Leetcode, artículo técnico

[Leetcode] 0208. Implementar Trie

Un trie (pronunciado como "try") o árbol de prefijos es una estructura de datos de árbol utilizada para almacenar y recuperar claves de manera eficiente en un conjunto de datos de cadenas. Hay varias aplicaciones de esta estructura de datos, como el autocompletado y el corrector ortográfico.

Implementar la clase Trie:

Trie() Inicializa el objeto trie.
void insert(String word) Inserta la cadena palabra en el trie.
boolean search(String word) Devuelve verdadero si la cadena palabra está en el trie (es decir, se insertó antes) y falso en caso contrario.
boolean startsWith(String prefix) Devuelve verdadero si hay una cadena palabra insertada previamente que tiene el prefijo prefix, y falso en caso contrario.

[Leetcode] 0208. Implementar Trie Leer más »

Leetcode, artículo técnico

[Leetcode] 0235. Mínimo común ancestro de un árbol binario de búsqueda

Dado un árbol de búsqueda binaria (BST), encuentre el nodo ancestro común más bajo (LCA) de dos nodos dados en el BST.

Según la definición de LCA en Wikipedia: “El ancestro común más bajo se define entre dos nodos p y q como el nodo más bajo en T que tiene tanto p como q como descendientes (donde permitimos que un nodo sea descendiente de sí mismo)”.

[Leetcode] 0235. Mínimo común ancestro de un árbol binario de búsqueda Leer más »

Leetcode, artículo técnico

[Leetcode] 0098. Validar el árbol de búsqueda binaria

Dada la raíz de un árbol binario, determine si es un árbol de búsqueda binaria (BST) válido.

Una BST válida se define de la siguiente manera:

El subárbol izquierdo de un nodo contiene sólo nodos con claves menores que la clave del nodo.
El subárbol derecho de un nodo contiene sólo nodos con claves mayores que la clave del nodo.
Los subárboles izquierdo y derecho también deben ser árboles de búsqueda binarios.

[Leetcode] 0098. Validar el árbol de búsqueda binaria Leer más »

Leetcode, artículo técnico

[Leetcode] 0105. Construir un árbol binario a partir del recorrido en preorden e inorden

Dadas dos matrices de enteros preorder e inorder, donde preorder es el recorrido en preorden de un árbol binario e inorder es el recorrido en orden del mismo árbol, construya y devuelva el árbol binario.

[Leetcode] 0105. Construir un árbol binario a partir del recorrido en preorden e inorden Leer más »

Leetcode, artículo técnico
es_ESEspañol