Java: eliminar nodo de árbol binario ABB

Ya te enseñé a implementar un árbol binario en Java, insertar elementos, recorrer de 3 maneras distintas y buscar un elemento pero no vimos cómo eliminar un elemento de ese ABB. Por ello es que en este corto post de programación en Java vamos a ver cómo eliminar un nodo, hoja o dato de un árbol binario sin importar su posición y respetando a los nodos hijos en caso de que tenga. ...

enero 18, 2023 · 4 min · 843 palabras · Parzibyte

Lista ligada en Python

En este post te mostraré una lista ligada en Python que después se podría modificar como una cola o pila (ya que se pueden insertar elementos al inicio y al final). Las operaciones que manejaremos con esta lista enlazada son: Agregar al inicio Agregar al final Saber si elemento existe Eliminar un elemento Obtener cabeza Obtener cola Recorrer lista Por cierto, vamos a usar ciclos y no recursión para las operaciones. De esta manera el código queda más simple. ...

mayo 26, 2022 · 6 min · 1271 palabras · Parzibyte

Cola en C - Estructura de datos

En este post vamos a implementar una estructura de datos en C de tipo lista ligada. Se trata de una cola, que a su vez es una lista en donde iremos colocando los elementos al final de la misma, contrario a una pila en donde cada elemento va a la parte superior. Hay varias operaciones para una cola en C, pero por ahora te mostraré las 2 básicas: la de encolar un elemento y la de recorrer la cola. Con esos dos métodos ya puedes calcular el tamaño de la lista, comprobar si un elemento existe en la cola y muchas cosas más. Recuerda que la cola en C puede ser de cualquier tipo y guardar cualquier cantidad de datos de cualquier tipo. Al final nosotros le asignamos memoria dinámicamente con malloc. ...

abril 15, 2022 · 5 min · 897 palabras · Parzibyte

Java: ingresar palabra en árbol binario

Hoy vamos a resolver un ejercicio de Java. Se trata de solicitar una palabra y almacenarla en un árbol binario de búsqueda o ABB. El mismo dice así: Diseñar un programa en Java que ingrese una palabra mínima de 10 caracteres (se debe realizar la verificación de que no acepte frases), proceda a separar carácter a carácter y guardarlos en un ABB Recuerde que la primera letra será la Raíz. Es importante indicar que todo debe ser ejecutado en consola. El programa debe tener mínimo las siguientes opciones: Ingresar, Visualizar (pre-orden, post-orden e in-orden) y Finalizar. El programa debe tener al menos 3 clases. ...

febrero 5, 2022 · 7 min · 1426 palabras · Parzibyte

Ejercicio en C++ con archivo CSV, listas ligadas y disponibilidad de camas

En este post te mostraré la solución a un ejercicio en C++ que tiene que ver con archivos CSV y disponibilidad de camas en hospitales. Básicamente es leer un archivo CSV, pasarlo a la lista enlazada (estructura de datos) y luego generar estadísticas, eliminar repetidos, eliminar un registro y borrarlo. Nos vamos a basar ampliamente en dos tutoriales que ya he publicado en mi blog: leer archivos CSV con C++ y listas enlazadas en C++. ...

julio 25, 2021 · 10 min · 2045 palabras · Parzibyte

Lista ligada en C++

Hoy te enseñaré cómo implementar una lista ligada en el lenguaje de programación C++ también conocido como CPP. Además de mostrarte la clase Lista y la clase Nodo, te enseñaré las operaciones que podemos realizar con ella. Son las siguientes: Recorrer la lista imprimiendo los valores Verificar si un elemento existe dentro de la lista Eliminar un elemento de la lista ligada en C++ Crear una nueva lista sin elementos repetidos (eliminar duplicados) Todo esto usando C++ e implementando los métodos y algoritmos manualmente. Por cierto, en este caso el tipo de dato que vamos a almacenar será un int pero fácilmente puedes cambiarlo a cualquier otro tipo de dato. ...

mayo 20, 2021 · 4 min · 765 palabras · Parzibyte

Árbol binario en Python

En este post vamos a implementar la estructura de datos Árbol binario en Python, además de implementar la declaración de un Nodo o rama. También veremos cómo agregar al nodo sus partes izquierda y derecha, el método para agregar un valor de manera recursiva (y acomodarlo de acuerdo a la raíz) al árbol, recorrido inorden, postorden y preorden, así como la búsqueda de determinado valor en el árbol. Básicamente implementaremos un árbol en Python con los métodos más comunes. Recuerda que los árboles binarios son una estructura de datos bastante interesante en donde la búsqueda de un elemento se hace de manera rápida por la naturaleza del mismo. ...

enero 15, 2021 · 6 min · 1220 palabras · Parzibyte

C - Árbol binario de cadenas

En este post te mostraré cómo implementar la estructura de datos de árbol binario en ANSI C en donde el dato de cada nodo o rama será una cadena. Te enseñaré cómo agregar un struct de nodo de árbol cuyo dato es char*, elegir si el nodo va a la izquierda o derecha (comparando cadenas) , recorrer el árbol en preorden, inorden y postorden y también hacer una búsqueda en el mismo. Me estoy basando en el tutorial de árboles binarios en C que presenté anteriormente, solo que en aquel entonces fue con un tipo de dato entero, ahora lo haré con strings. Nota: nodo y rama serán usados como sinónimos a lo largo de este post. ...

enero 13, 2021 · 8 min · 1498 palabras · Parzibyte

Árbol binario en Java

Hoy toca ver una estructura de datos en Java: el árbol binario. Vamos a crear una clase para gestionar un árbol binario que tendrá las siguientes características: Insertar datos (de manera balanceada) Buscar datos Recorrer en preorden, inorden y postorden Además de eso, nuestro árbol tendrá soporte para datos de tipo String y de tipo int, por lo que podremos almacenar, buscar y mostrar datos tanto de cadena como de tipo entero. ...

mayo 8, 2020 · 12 min · 2434 palabras · Parzibyte

C - Agregar nodo al final de pila

Hace algún tiempo publiqué cómo trabajar con pilas en C, en el post, el elemento siempre se inserta en la parte superior, pues así es la estructura de datos. Sin embargo, es posible que quieras saber cómo agregar un elemento al final de la pila o lista, en lugar de agregarlo en el nodo superior. Eso es lo que veremos hoy. ...

marzo 18, 2020 · 2 min · 263 palabras · Parzibyte