Seite 1 von 1

b-tree insert falsch aber richtige lösung??!?

Verfasst: 22. Sep 2015 13:35
von DerFuchs123
hallo
warum ist diese lösung hier denn ichtig, das ist doch irgendwie total falsch??
ich bin gerade voll a m verzweifeln!!! :shock: :shock:
kann mirt bitte jemand helfen danke

Re: b-tree insert falsch aber richtige lösung??!?

Verfasst: 22. Sep 2015 14:11
von robtothein
Hi,

ohne Seed ist es schwer eine genaue Aussage zu treffen, aber ich gehe davon aus, dass du den Knoten mit dem Key 1000 meinst. (gehe davon aus, dass du diesen zum "Spaß" eingefügt hast? :D )
Die Lösung ist korrekt, weil du wahrscheinlich die Knoten-ID mit dem Key 1000 nicht 0 gesetzt hast. Die Wurzel hat immer die Knoten-ID = 0 in foo und wird wahrscheinlich auch von da aus erst kontrolliert, sodass deine 1000 ignoriert wird.

Re: b-tree insert falsch aber richtige lösung??!?

Verfasst: 22. Sep 2015 19:01
von rosh08
Ich habe das Problem genau andersrum…
d.h. eine Lösung, die keine der B-tree Kriterien verletzt, soll daher richtig sein! aber wird als falsch bewertet!

zum Beispiel, wenn ich beim Entfernen einer Knote, die unmittelbar nächste Key (rechts) ersetze und nicht die unmittelbar letzte (links) …
gibt's nur EINE LÖSUNG dafür?

imgur.com/I0xClvq

Re: b-tree insert falsch aber richtige lösung??!?

Verfasst: 22. Sep 2015 20:19
von tmuecksch
Habe das gleiche Problem... :roll:

Re: b-tree insert falsch aber richtige lösung??!?

Verfasst: 22. Sep 2015 22:41
von robtothein
rosh08 hat geschrieben:Ich habe das Problem genau andersrum…
d.h. eine Lösung, die keine der B-tree Kriterien verletzt, soll daher richtig sein! aber wird als falsch bewertet!

zum Beispiel, wenn ich beim Entfernen einer Knote, die unmittelbar nächste Key (rechts) ersetze und nicht die unmittelbar letzte (links) …
gibt's nur EINE LÖSUNG dafür?

imgur.com/I0xClvq
Sry, verstehe deine Frage nicht.

Zu deinem Screenshot: Du musst darauf achten, dass du das linke Kind mit rechtem Kind "mergst" und den Key von oben halt noch. Aber im linken Kind muss irgendwo(evtl. noch tiefer) der zu löschende Key sein, nicht im rechten Kind. Ausnahmefall ist natürlich wenn der zu löschende Key ganz rechts irgendwo im Kind ist.

So merk ich es mir, hoffe ihr/du versteht was ich mein :D

Re: b-tree insert falsch aber richtige lösung??!?

Verfasst: 23. Sep 2015 12:53
von rosh08
Du musst darauf achten, dass du das linke Kind mit rechtem Kind "mergst" … …
Ach, hab nicht gewusst, dass man nur nach rechts "mergen" darf! Naja, so gibt's nur eine Möglichkeit.