You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
# añadirle el permiso de ejecución al shell script
chmod +x ./hooks/configure.sh
# ejecutar el script
./hooks/configure.sh
¿Cómo correrlo?
Logs Off
make prod
./avlprod
Logs On
make debug
./avldebug
Tests
make tests
./avltest
Operaciones soportadas
Operación
Complejidad
Descripción
Notas
findKey
O(lg n)
Devuelve el key (puntero) si lo encontró, de lo contrario devuelve nullptr
iterativeFindKey
O(lg n)
Misma funcionalidad que findKey, pero implementado de manera iterativa
-
find
O(lg n)
Devuelve el value (puntero) asociado al key si lo encontró, de lo contrario devuelve nullptr. Es recursivo.
-
insert
O(lg n)
Inserta un key-value pair
iterativeInsert
O(lg n)
Misma funcionalidad que insert, pero inserta de manera iterativa
-
remove
O(lg n)
Remueve un key-value pair
Optimizado para que reemplace con el predecesor o sucesor dependiendo de cuál subárbol tiene menor altura
maximum
O(lg n)
Devuelve una tupla con el key (de máximo valor) y su value correspondiente (ambos punteros). Si no hay maximum, devuelve una tupla con dos nullptr
-
minimum
O(lg n)
Devuelve una tupla con el key (de mínimo valor) y su value correspondiente (ambos punteros). Si no hay minimum, devuelve una tupla con dos nullptr
-
predecessor
O(lg n)
Devuelve una tupla con el key y su value correspondiente (ambos punteros) del predecesor del key pasado como parámetro, sino devuelve una tupla con dos nullptr
-
sucessor
O(lg n)
Devuelve una tupla con el key y su value correspondiente (ambos punteros) del sucesor del key pasado como parámetro, sino devuelve una tupla con dos nullptr
-
inorderString
O(n)
Retorna un string que tiene todos los keys del AVL en modo inorder
-
inorder
O(n)
Recorre el AVL de manera inorder y recibe un lambda como parámetro para procesar de alguna manera cada key-value