Home Hardware Networking Programmazione Software Domanda Sistemi
Conoscenza Informatica >> Programmazione >> Computer Programming Languages >> .

Come impostare un Binary Search Tree in Python

alberi binari di ricerca sono uno dei tipi di dati astratti di base concepiti in programmazione di computer . Attraverso un albero binario di ricerca , è possibile definire una struttura di base attraverso l'ingresso e algoritmi di ricerca che rende la localizzazione e il recupero di informazioni semplice e sistematico. Dal momento che si tratta di un tipo di dati " astratto" , è possibile implementare in qualche forma in più ogni linguaggio di programmazione , tra cui Python . Creazione di una classe per rappresentare l'albero, si può facilmente costruire un semplice albero binario di ricerca . Cose che ti serviranno
interprete Python
Show More Istruzioni
1

Creare una classe per rappresentare l'albero. Tutto il codice cadrà in questa classe e di controllarne le funzioni albero :
>>>

classe BinaryTree :
2

definire i dati albero nella classe . In questa classe particolare , si definisce l'albero come una lista Python . L'elenco di cui l'albero binario inizia con una dimensione iniziale di 50 :

. . . _tree = [ -1 ] * 50
3

Creare la funzione di inserimento . Questa funzione utilizza la matematica semplice per determinare i punti di inserimento . Esso controllerà ogni spot . Se la macchia contiene un numero negativo ( -1 ) , allora il punto è vuota e inserirà . In caso contrario , si muove al punto successivo . Inserimento in un albero binario significa che i valori minori si sposteranno al nodo " di sinistra " ( 2i + 1 , dove " i" è l' indice di lista corrente) e valori maggiori sposterò al nodo " di destra " ( 2i +2) :

. . . def Inserimento (self, value) : . . . index = 0 . . . mentre self._tree [index ] > = 0 : . . . se il valore > self._tree [index ] . . . indice = ( 2 * indice) + 1 . . . altra cosa : . . . indice = ( 2 * indice) + 2 . . . self._tree [indice] = valore
4

Creare una funzione di ricerca . La funzione di ricerca si comporterà in modo simile alla funzione di inserimento , ma si verifica solo se il valore esiste nella struttura :

. . . def ricerca (self, value) : . . . index = 0 . . . mentre self._tree [index ] > = 0 : . . . se self._tree [ index] == valore : . . . restituisce vero. . . restituire False

 

Programmazione © www.354353.com