Idő elemzése bináris keresési fa műveletek

szavazat
0

Olvastam bináris keresési fák, hogy ha ez egy teljes fát (összes csomópont kivételével szárcsomóknál két gyerek), amelynek n csomópont, akkor nincs útvonal is több, mint 1 + log n csomópontokat.

Itt látható a számítási tettem ... tudsz mutatni, hol rontottam el ....

the first level of bst has only one node(i.e. the root)-->2^0
the second level have 2 nodes(the children of root)---->2^1
the third level has 2^3=8 nodes
 .
 .
the (x+1)th level has 2^x nodes

so the total number of nodes =n = 2^0 +2^1 +2^2 +...+2^x = 2^(x+1)-1
so, x=log(n+1)-1

now as it is a 'complete' tree...the longest path(which has most no of nodes)=x
and so the nodes experienced in this path is x+1= log(n+1)

Akkor hogyan száma 1 + log n jön ...?

A kérdést 26/09/2011 18:26
a forrás felhasználó
Más nyelveken...                            


1 válasz

szavazat
1

Rövidebb válasz: a szám xa szintek egy teljes (vagy tökéletes) bináris fa log2(n+1), ahol na csomópontok száma (alternatív módon n = 2^(x-1)). A fa xszinten van magassága x-1. A leghosszabb útvonal a gyökér minden csomópont tartalmaz x = log2(n+1)csomópontok (és x-1élek).

Most azért, mert n+1egy 2-hatvány, van, hogy log2(n+1) = 1 + floor(log2(n)). Más szóval, 1 + log2(n)egy korrekt felső határ, de ez nem egy egész szám.

Nem világos számomra, hogy a xsaját számítás magasságára utal, vagy a szintek számát.

Válaszolt 26/09/2011 19:35
a forrás felhasználó

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more