Sono laurea e ordina la stessa cosa quando si fa riferimento a un B-Tree


8

Conosco il termine ordine di un albero a B. Di recente ho sentito un nuovo termine: albero B con un grado minimo di 2.

Sappiamo che il grado è legato a un nodo ma qual è il grado di un albero?
Il grado impone qualche tipo di restrizione sull'altezza di un albero a B?

Risposte:


10

Non penso che il grado di un albero sia un termine standard né nella teoria dei grafi né nelle strutture dei dati. Un grado è di solito una proprietà di un nodo / vertice di un grafico, che indica il numero dei suoi bordi incidenti. Per gli alberi a volte si considerano solo i bordi dei bambini.

Suppongo che "B-tree con un grado minimo di 2" significhi che ogni nodo ha almeno due figli. In altre parole, è un limite inferiore per il numero di bambini. D'altra parte l'ordine di un albero B indica il grado massimo del nodo ed è quindi un limite superiore.


2
Si. Questo era il punto. Degreerappresenta il limite inferiore del numero di bambini. cioè il numero minimo possibile. Considerando che Orderrappresenta il limite superiore sul numero di bambini. vale a dire. il numero massimo possibile. Grazie.
h8pathak,

1
Il grado è assolutamente un termine standard nella teoria dei grafi: il grado di un vertice è il numero di bordi incidenti su di esso.
David Richerby,

9

Un nodo B-Tree può contenere più di un valore chiave mentre un nodo BST ne contiene solo uno. Esistono limiti inferiori e superiori sul numero di chiavi che un nodo può contenere. Questi limiti possono essere espressi in termini di un numero intero fisso t>=2chiamato il grado minimo dell'albero B.

  • Ogni nodo diverso dal root deve avere almeno le t-1chiavi. Ogni nodo interno diverso dalla radice ha quindi almeno tfigli.
  • Ogni nodo può contenere al massimo 2t-1chiavi. Pertanto, un nodo interno può avere al massimo 2tbambini. Diciamo che un nodo è pieno se contiene esattamente le 2t-1chiavi.

Fare clic su questo collegamento per avere un eccellente base su B-Tree e questo collegamento per un algoritmo di follow-up e più facilmente scritto delle operazioni di B-Tree.


5

Finora ho visto tre modi per caratterizzare B-tree:

  1. Con grado dell'albero a B. t(minimo, come nel libro degli algoritmi CLRS , o massimo come nel Visualizzatore B-tree ).

    Il B-tree più semplice si verifica quando t=2. Ogni nodo interno ha quindi 2, 3 o 4 figli e abbiamo un albero 2-3-4 .

    Il testo a cui fa riferimento la risposta di Nasir segue da vicino la definizione dell'albero a B come fornita negli algoritmi con una spiegazione dettagliata delle proprietà del grado minimo.

  2. Con L e U si suppone che i parametri, con limite inferiore (superiore) sul numero di nodi interni del figlio (ad es. albero B con L=3,U=6 è equivalente a B-tree con t=3 (entrambi con 2-5 chiavi per nodo),

  3. Con ordine dell'albero B. m, dato da Knuth in TAOCP, vol. 3 tale che qualsiasi nodo interno ha tram2 e m bambini.

Riassumendo:

  • Con la caratterizzazione dei gradi il numero consentito di bambini è destinato a risiedere [t,2t] intervallo,
  • mentre L e U consente una specifica più precisa del numero di bambini (ovvero il numero di chiavi per nodo consentito).

Per quanto riguarda la seconda parte della domanda di OP c'è il Teorema 18.1 in Algorithms:

Se n1, quindi per qualsiasi nB-albero T di altezza h e laurea minima t2, hlogtn+12.


4

L'ordine (m) dell'albero B definisce (max e min) n. di bambini per un nodo particolare.

Il grado (t) dell'albero B definisce (max e min) n. di chiavi per un nodo particolare. Il grado è definito come grado minimo di albero B.

Un albero B di ordine m: tutti i nodi interni tranne la radice hanno al massimo m figli non vuoti e almeno ⌈m / 2⌉ figli non vuoti.

Un albero B di (minimo) grado t:

  1. ogni nodo ha al massimo 2t-1 chiavi
  2. se il nodo non è root, ha almeno le chiavi t-1.

Benvenuti in Informatica ! Nota che puoi usare LaTeX qui per comporre la matematica in un modo più leggibile. Vedi qui per una breve introduzione.
FrankW

1

Degreerappresenta il limite inferiore sul numero di figli che può avere un nodo nella struttura ad albero B (ad eccezione della radice). cioè il numero minimo di bambini possibile. Considerando che Orderrappresenta il limite superiore sul numero di bambini. vale a dire. il numero massimo possibile.

B Proprietà dell'albero rispetto all'Ordine

B Proprietà dell'albero rispetto all'ordine.

NOTE: Wikipedia afferma anche questi

B Proprietà dell'albero rispetto al grado

B Proprietà dell'albero rispetto al grado

NOTE: These can also be found in the CLRS book


1
Se si desidera modificare la risposta, utilizzare il collegamento Modifica e non ripubblicare. Inoltre, ti preghiamo di non utilizzare le immagini come contenuto principale del tuo post, poiché sono inaccessibili ai motori di ricerca e agli ipovedenti. Se hai intenzione di utilizzare un'immagine, devi citarne l'origine.
David Richerby,

1
In secondo luogo, trascrivi la tua immagine in testo.
Evil

0

Albero B dell'ordine 5 O m = 5

max bambini = 5

min bambini = ceil (m / 2) = 3


Albero B di grado 5 O t = 5

tasti max = 2t-1

chiavi min = t-1


3
Per favore, non scrivere semplicemente un elenco di equazioni. Spiega la tua risposta in modo che sia utile alla persona che ha posto la domanda.
David Richerby,

1
Questa risposta mi ha davvero aiutato.
h8pathak,

0

Le terminologie degli alberi B non sono definite in modo uniforme ovunque io legga , tuttavia la domanda ambigua è qual è l'ordine di un albero B? e non molto riguardo al grado di un B-Tree . Il grado deriva dalla teoria dei grafi che lo indica come la somma dei gradi in e out di quel nodo.

In base al quale si può dedurre che il grado è più strettamente correlato al numero di puntatori / figlio che un nodo B-Tree può avere al posto dei valori chiave nel nodo.

Secondo Knuth e Michael J. Folk , un albero B di ordine m è un albero con ogni nodo che ha al massimo m figli. Quindi, molto vagamente, possiamo dire che entrambi sono termini più o meno equivalenti nel contesto di B-Tree.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.