Insertar nodos secuencialmente en un árbol binario (implementación JS)
En el paso 3, C debe almacenarse porque C, como nodo principal de la operación de inserción, se eliminó en el paso 6. Al mismo tiempo, después de realizar la operación de inserción en la parte inferior derecha, A no se puede insertar en el nodo secundario
. ..
En el paso 5, es necesario almacenar E, que se eliminará en operaciones posteriores como el nodo principal de la operación de inserción. Al mismo tiempo, B, como A, no se puede insertar después. se ejecuta la operación de inserción en la parte inferior derecha. Para los nodos secundarios
Por lo tanto, se establece una cola para almacenar los nodos que se sacarán en operaciones posteriores y los nodos que no se volverán a sacar. Cada vez que se inserta un nuevo nodo, entra en la cola. Al mismo tiempo, si se inserta un nuevo nodo en la parte inferior derecha del nodo principal, el nodo principal se eliminará de la cola.
La posición del nodo insertado se puede determinar por el número de veces que se ha insertado. Si esta es la primera inserción, es el nodo raíz. Si es la enésima (n>1) inserción, si n es un número par, se insertará a la izquierda, si n es un número impar, se insertará a la derecha
Por lo tanto, Necesitamos insertar el número de veces almacenado en una variable llamada
Nodo del entorno de ejecución v8.4.
Primero, debe determinar si el nodo insertado está vacío.
Si está vacío, no se insertará como nodo principal y, por lo tanto, no es necesario incluirlo en la lista.