|Treap: árbol binario de búsqueda aleatorizadoMaster
Ejercicio00:00

¿Quieres un reto mayor?

Resuelve en 20:00

info

Importante: Para que se registre el resultado tienes que iniciar sesión.

Treap: árbol binario de búsqueda aleatorizado

Master200 pts·Algoritmos

Enunciado

Treap: Árbol Binario de Búsqueda Aleatorizado

Un Treap es una estructura de datos que combina las propiedades de un árbol binario de búsqueda (BST) y un heap. Cada nodo contiene:

  • Una clave (key): que satisface la propiedad BST (clave izquierda < clave nodo < clave derecha).
  • Una prioridad (priority): que satisface la propiedad de max-heap (la prioridad del padre es mayor o igual a la de sus hijos).

Gracias a las prioridades (normalmente aleatorias), el árbol se mantiene balanceado en promedio, garantizando operaciones en O(log n) esperado.

Operaciones

Implementa un método treap que recibe una lista de operaciones y devuelve una lista con los resultados de las operaciones "search".

Cada operación es una lista con el formato:

  • ["insert", key, priority] — inserta un nodo con la clave y prioridad dadas. Si la clave ya existe, no hace nada.
  • ["delete", key] — elimina el nodo con esa clave. Si no existe, no hace nada.
  • ["search", key] — devuelve true si la clave existe, false en caso contrario.

Ejemplo

// operations: [["insert",5,10],["insert",3,8],["insert",7,6],["search",3],["search",4],["delete",3],["search",3]]
// resultado: [true, false, false]

Restricciones

  • Las claves son enteros en el rango [-10^6, 10^6].
  • Las prioridades son enteros positivos.
  • El número de operaciones es como máximo 1000.
  • Solo las operaciones "search" generan salida.
Restriccionesexpand_more
  • Dificultad: Master
  • Completa todos los test cases para obtener los 200 puntos.
  • No modificar la línea export al final del archivo.
  • Se recomienda evitar el uso de inteligencia artificial para que realmente tú practiques los ejercicios.

Puedes usar System.out.println() para depurar. Los resultados aparecen en la Consola de salida, no en el navegador.

Inicia sesión para reaccionar
Inicia sesión para reaccionar
Treap: árbol binario de búsqueda aleatorizado — Master | Coding Challenges · Coding Challenges