Estructura de datos (preguntas de la entrevista Java)

1. ¿Cuáles son los ocho algoritmos de clasificación?

2. ¿Cuáles son los algoritmos de consulta?

3. ¿Conoces la implementación subyacente de zset?

4. ¿Conoces el árbol B, el árbol avl y el árbol rojo negro? ¿Conoces alguna estructura de datos con un rendimiento cercano a los árboles rojo-negros?

5. ¿Cuáles son las estructuras de datos más utilizadas en Java?

Matriz, lista vinculada, pila, cola, montón, árbol

6. ¿Cuál es la diferencia entre una matriz y una lista vinculada?

El almacenamiento de los datos de la matriz en el espacio de memoria es secuencial. La lista vinculada no está ordenada. El tamaño de la matriz no se puede modificar. La lista vinculada sí. La
matriz se consulta a través del índice, pero la adición y eliminación son lentas. La dirección de la memoria debe moverse. La lista vinculada es
rápida en adición y eliminación, lo que significa que la consulta es lenta y necesita ser recorrida.

7. El principio de clasificación rápida, la complejidad del tiempo y el espacio.

(1) Tome un número de referencia
(2) Coloque el pequeño a la izquierda y el grande a la derecha
(3 ) Tome el valor medio en cada lado
(4) Repita los pasos anteriores
(5) Complejidad de tiempo O (nlogn), complejidad de espacio O (log )

8. Principio de ordenación del montón

(1) El montón es un tipo especial de árbol binario completo. Un árbol binario completo es un tipo de árbol. Excepto por la capa inferior, cada capa está llena.
(2) Montón superior grande: todos los nodos hijos son más pequeños que el nodo padre, y el árbol superior pequeño Montón: todos los nodos secundarios son más grandes que el nodo primario
(3) Ordenar de pequeño a grande para construir un montón superior grande, ordenar de grande a pequeño para construir un montón superior pequeño
(4) Árbol binario lógico, no es necesario construir realmente un árbol binario, el inferior sigue siendo una matriz
( 5) Complejidad temporal O (nlog2n), complejidad espacial O (1)

9. Tomando el árbol binario como ejemplo, cómo implementar la búsqueda profunda (pila) y la búsqueda amplia (tabla hash)

DFS búsqueda en profundidad: preorden de recorrido, en el recorrido de orden, orden posterior recorrido, la pila se pueden utilizar para lograr
BFS BFS: desplazamiento a lo largo de la anchura del árbol, se puede implementar con cola

51 artículos originales publicados · Me gusta2 · Visitas 1853

Supongo que te gusta

Origin blog.csdn.net/qq_42972645/article/details/105658073
Recomendado
Clasificación