Después de probar la seguridad offer_ _ árbol binario de búsqueda secuencia binaria preorden

secuencia de recorrido de árbol binario de búsqueda subsecuente

Aquí Insertar imagen Descripción
Respuestas
Preguntas resueltas
idea: la naturaleza de la matriz binaria recursiva árbol de búsqueda para determinar si el cumplimiento de la naturaleza, en línea con el sí de salida, no se ajustan a la salida NO

Binary árbol de búsqueda es una búsqueda ordenada binario árbol de búsqueda matriz está formada, que se refiere a un árbol vacío o un árbol binario que tiene las siguientes propiedades:

Si el subárbol izquierdo de cualquier nodo no está vacío, entonces el valor del subárbol izquierdo, todos los nodos son menores que el valor del nodo raíz;
si alguno de los subárbol derecho de nodos no está vacío, el subárbol derecho son mayores que los valores de todos los nodos que el valor del nodo raíz;
dejó ningún nodo, respectivamente, para el subárbol derecho árbol de búsqueda binaria.

# -*- coding:utf-8 -*-
class Solution:
    def VerifySquenceOfBST(self, sequence):
        # write code here
        if len(sequence)==0:
            return 0
        index = 0
        for i in range(len(sequence)):
            if sequence[i] > sequence[-1]:
                index = i
                break
        for j in range(i, len(sequence)-1):
            if sequence[j] < sequence[-1]:
                return False
        left = True
        right = True
        if len(sequence[:index])>0:
            left = self.VerifySquenceOfBST(sequence[:index])
        if len(sequence[index:-1])>0:
            right = self.VerifySquenceOfBST(sequence[index:-1])
        return left and right
Publicado 31 artículos originales · ganado elogios 0 · Vistas 724

Supongo que te gusta

Origin blog.csdn.net/freedomUSTB/article/details/105105507
Recomendado
Clasificación