El paquete dstructure es una biblioteca de Python para tratar con la estructura de datos y el algoritmo. En este artículo, discutiremos cómo podemos implementar un árbol binario y realizar varias operaciones utilizando la biblioteca dstructure en Python.
Instalación
Para instalar dstructure, abra la terminal y escriba el siguiente comando:
pip install dstructure
Árbol binario
Un árbol cuyos elementos tienen como máximo dos hijos se llama árbol binario . Dado que cada elemento en un árbol binario puede tener solo 2 hijos, normalmente los llamamos hijo izquierdo y derecho. Sin embargo, la biblioteca dstructure ayuda a implementar directamente un árbol binario.
Un Node de árbol binario contiene las siguientes partes.
- Datos
- Puntero al niño izquierdo
- Puntero al niño derecho
Métodos disponibles
Veamos los diferentes métodos disponibles para manejar el árbol binario. Primero, haremos el árbol binario y luego aplicaremos todos los métodos.
Para crear un árbol binario, primero importamos el módulo de estructura, creamos un objeto de clase BTree para inicializar un árbol binario vacío y usamos el método insert() para insertar Nodes en el árbol. A continuación se muestran los diversos métodos utilizados para crear y realizar diversas operaciones en un árbol binario.
- insert(int_value): esta función toma un valor int y agrega ese valor al árbol.
Python3
# import module from dstructure.BTree import BTree # create class obj=BTree(23) # insert nodes obj.insert(10) obj.insert(20) obj.insert(30) obj.insert(40) # display object print(obj)
Producción:
<dstructure.BTree.BTree object at 0x000001F02815B648>
- inorder(obj): esta función toma un objeto como entrada y devuelve el recorrido inorder del árbol.
Python3
# return inorder in list inorder = obj.inorder(obj) print(inorder)
Producción:
[10, 20, 23, 30, 40]
- preorder(obj): esta función toma un objeto como entrada y devuelve el recorrido del árbol en preorder.
Python3
# return preorder in list preorder = obj.preorder(obj) print(preorder)
Producción:
[23, 10, 20, 30, 40]
- postorder(obj): esta función toma un objeto como entrada y devuelve el recorrido postorder del árbol.
Python3
# return postorder in list postorder = obj.postorder(obj) print(postorder)
Producción:
[20, 10, 40, 30, 23]
- get_bfs() : esta función devuelve el recorrido de búsqueda en anchura del árbol.
Python3
# return Breadth First Search of tree in list bfs = obj.get_bfs() print(bfs)
Producción:
[23, 30, 10, 40, 20]
- get_dfs(): esta función devuelve el recorrido de búsqueda en profundidad del árbol.
Python3
# return Depth First Search of tree in list dfs = obj.get_dfs() print(dfs)
Producción:
[23, 10, 20, 30, 40]
- left_view(): Esta función devuelve la vista izquierda del árbol.
Python3
# return Left View Of Tree in list left = obj.left_view() print(left)
Producción:
[23, 10, 20]
- right_view() : Esta función devuelve la vista derecha del árbol.
Python3
# return Right View Of Tree in list right = obj.right_view() print(right)
Producción:
[23, 30, 40]
- total_nodes() : esta función devuelve el número de Nodes en el árbol.
Python3
# return the number of nodes present in the Tree count = obj.total_nodes() print(count)
Producción:
5
Publicación traducida automáticamente
Artículo escrito por deepanshu_rustagi y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA