Dane są dwa drzewa AVL:
- T1: Zawiera klucze, których wartości są mniejsze od pewnej wartości.
- T2: Zawiera klucze, których wartości są większe od pewnej wartości.
Operacje do wykonania:
- Join(T1, T2): Zwraca jedno drzewo AVL, które zawiera wszystkie elementy z T1 i T2, zachowując właściwości drzewa AVL.
- Split: Dzieli drzewo AVL na dwa poddrzewa:
- Jedno zawiera klucze mniejsze od zadanego klucza.
- Drugie zawiera klucze równe lub większe od zadanego klucza.
- AVL.hpp: Plik nagłówkowy zawierający implementację operacji na drzewach AVL.
- BinaryTree.cpp: Zawiera funkcję
main()
, która umożliwia uruchamianie operacji na drzewach AVL. - test.cpp: Plik zawierający zestawy danych do testowania operacji na drzewach AVL.
Aby skompilować program, należy wykonać poniższe kroki:
- Skompiluj pliki
BinaryTree.cpp
itest.cpp
. - Uruchom program używając polecenia:
./test | ./BinaryTree