Napište objektovou implementaci nějaké pokročilejší datové struktury, kterou jste brali na přednášce.
Struktura bude reprezentovaná jedním objektem a bude podporovat všechny potřebné operace pro práci s daty. Všechny veřejné metody budou zaručovat, že při jejich volání se struktura bude nacházet v konzistentním stavu (např. pokud chci smazat prvek z prázdné struktury, tak program nespadne a podobně). Používejte správně modifikátory přístupu (tzn. public, private) a držte se pravidel objektového programování.
Například objektová implementace binárního vyhledávacího stromu by měla nabízet minimálně tyto veřejné metody:type BVS = ... var strom1, strom2 : BVS; begin strom1 = new(BVS); //vytvoří nový prázdný strom; strom1.pridej(25); strom1.pridej(45); strom1.obsahujeNecoZIntervalu(0, 30); //vrati TRUE strom1.vypisOdNejmensiho; strom2 = new(BVS); strom2.pridej(25); strom1.maNeprazdnyPrunik(strom2); //vrati TRUE // atd. end;