Avatar billede cool10 Nybegynder
28. marts 2011 - 14:36 Der er 5 kommentarer

B-tree

hej

nogen der kan hjælpe med denne opgave

jeg skal lave et B-tree for følgende nøgler

(41, 6, 18, 52, 14, 2, 92, 25, 22, 63, 37)

nogen der kan lave dette ??

på forhånd tak

mikkel
Avatar billede Trollekrogen Nybegynder
28. marts 2011 - 16:05 #1
Hej Mikkel
Jeg går ud fra det er en tegning du ønsker, den må du selv lave.
Start med det første tal i den usorterede tabel (41) det bliver roden du har nu fra roden to muligheder for det næste tal større eller mindre, er det større gå til højre er det mindre gå til venstre.

                41
                /    \
            6      52
            /  \          \
        14  18      92
          /        \        /
      2        25      63
                  /  \
              22  37


Mvh. Lars
Avatar billede arne_v Ekspert
29. marts 2011 - 00:41 #2
Det der ligner et binary tree - ikke et balanced tree.

http://en.wikipedia.org/wiki/B-tree
Avatar billede cool10 Nybegynder
29. marts 2011 - 10:52 #3
hvordan vil et balanced tree se ud til de nøgler?
Avatar billede gnoname Praktikant
31. marts 2011 - 01:37 #4
Et balanceret søgetræs udseende vil naturligvis afhænge af den algoritme der genererer træet!
Det balancerede søgetræ ER et binary træ - men det tager højde for søgedybden; dvs. det balancerer det binære træ.

Lars' træ så således ud:

                41
              /    \
            6      52
          /  \      \
          14  18      92
          /      \    /
        2      25  63
                /  \
              22  37


Der er godt nok en fejl i dette da 14 som bekendt er større end 6; dvs det skulle se således ud:

                  41
              /      \
              6        52
            /  \          \
          2  18        92
              /  \      /
              14  25    63
                  /  \
                22  37

Her er søgedybden større på venstre side af træet og det er derfor i ubalanceret :)

Hvis vi i stedet balancerer det kunne det se således ud:

                  25
                /  \
              18    41
              /  \    \
            6  22    63
            /  \  \  /  \
          2  14  37 52  92


Man skal bare skrive en algoritme, der balancerer det ...
Avatar billede arne_v Ekspert
02. april 2011 - 01:56 #5
Balancerede træer vil når de kalde B træer ikke være binære.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester