La búsqueda binaria Resumen árbol

Construir árbol de búsqueda binaria

struct node *insert(int k, struct node *T)
{
    if (!T)
    {
        T = new node;
        T->data = k;
        T->l = T->r = NULL;
    }
    else
    {
        if (k > T->data)
            T->r = creat(k, T->r);
        else
            T->l = creat(k, T->l);
    }
    return T;
}

Para determinar si el mismo un árbol de búsqueda binaria

Cómo determinar si el mismo árbol binario? ¿Cómo se llama es un árbol binario con ella?
Para la búsqueda de árbol binario de búsqueda, la idea es:
1, empezar a buscar desde el nodo raíz, si el árbol está vacía, devuelve NULL.
2, si el árbol no está vacío, vamos a la raíz de los datos X y datos para la comparación.
3, si el valor de X es mayor que la raíz del nodo de datos, la búsqueda prosigue subárbol derecho, si el valor de X es menor que el nodo raíz de datos, la búsqueda prosigue subárbol izquierdo.
4, si el valor de X es igual de datos, dice que la búsqueda se ha completado, los rendimientos de nodo.

第一种方法,两棵树直接递归比较:
核心代码:
void judge(struct node *T, struct node *t)
{
    if (T&&t)
    {
        if (T->data != t->data)
        {
            flag = 1;
            return ;
        }
        judge(T->l, t->l);
        judge(T->r, t->r);
    }
}
第二种方法,循环查找(效率高):
核心代码:
node* judge(int x, node* T)
{
    while(T)
    {
        if(x > T->data)
            T=T->r;
        else if(x < T->data)
            T=T->l;
        else
            return T;
    }
    return NULL;
}

Árbol binario de búsqueda (espejos) Analizar

Teniendo en cuenta una serie de números, se determina si la secuencia es una secuencia de preventa de recorrido de un árbol o un árbol binario de búsqueda binario reflejado árbol de búsqueda, y si es así, la posterior resultados de salida preorden

La resolución de problemas ideas:
1. En primer lugar es para determinar si el árbol binario de búsqueda, da orden previo, por lo que el primer número es la raíz de la primera orden, el primer número mayor que o igual a encontrar nodo raíz, a partir de este comienzo serie subárbol derecho, si hay menos de un subárbol derecha del número de nodo raíz que no es menor árbol binario de búsqueda , las condiciones de contraste de la imagen se puede determinar el nodo
2, si un árbol de búsqueda binario es un árbol binario generado mientras que el lado recursiva, y finalmente devuelve la raíz nodo
3, la búsqueda binaria para el recorrido del árbol

Continuará. . .

Publicado 29 artículos originales · ganado elogios 4 · Vistas 4686

Supongo que te gusta

Origin blog.csdn.net/onion___/article/details/88831528
Recomendado
Clasificación