Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- Praxiseinheit 5 - B-Baum
- Realisierung eines B-Baum mit Hilfe eines ADTs BTree. Implementieren folgender öffentlicher Methoden:
- • insert(int key) - Einfügen eines Schlüssels key
- • exists(int key) - gibt true zurück wenn key im B-Baum vorhanden ist
- • remove(int key) - Entfernen des Schlüssels key
- Hinweise
- • Implementieren eines geeigneten Konstruktors, um die Ordnung M des B-Baums als Argument
- sowie einen passenden Destruktor zu übergeben
- • Einfüge- und Löschverfahren: aus Vorlesung vorgestellte Algorithmen und Definitionen anwenden
- • Organisation und Verwaltung der Schlüssel innerhalb eines B-Baum-Knotens ist freigestellt.
- • Schlüssel müssen sortiert sein
- */
- //Grundstruktur des B-Baums
- class BTree
- {
- typedef struct bnode; // Vorwärtsdeklaration von bnode
- struct keyNode // Schlüssel-Knoten für jeden Schlüssel eines B-Baumknotens
- {
- int key; // Schlüssel
- data* info; // Zeiger auf eigentliche Daten
- bnode* right; // rechter Teilbaum mit größeren Elementen als key
- };
- struct bnode // eigentlicher B-Baumknoten
- {
- bnode* left; // linker Teilbaum
- keyNode *iNode; // Speicher auf beliebige Anzahl solcher Elemente
- };
- bnode *feld;
- public:
- BTree(int m) // Konstruktor
- {
- feld = new bnode;
- }
- feld->inode = new keynode[m]; // für Feldgröße
- ~BTree() // Destructor
- {
- while(feld!=NULL)
- {
- node * temp = feld;
- feld = feld->next;
- delete temp;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement