class Strom { Polozka vrchol; public Strom() { this.vrchol = null; } public void pridat(int klic) { if (this.vrchol == null) { this.vrchol = new Polozka(klic); } else { Polozka x = this.vrchol; Polozka novaPolozka = new Polozka(klic); while(x != null) { if (x.klic > klic) { if (x.vlevo == null) { x.vlevo = novaPolozka; break; } else { x = x.vlevo; } } else { if (x.vpravo == null) { x.vpravo = novaPolozka; break; } else { x = x.vpravo; } } } } } public void preorderR(Polozka polozka) { System.out.print(polozka.klic+" "); if (polozka.vlevo != null) this.preorderR(polozka.vlevo); if (polozka.vpravo != null) this.preorderR(polozka.vpravo); } public void preorder() { this.preorderR(this.vrchol); System.out.println(); } public void inorderR(Polozka polozka) { if (polozka.vlevo != null) this.inorderR(polozka.vlevo); System.out.print(polozka.klic+" "); if (polozka.vpravo != null) this.inorderR(polozka.vpravo); } public void inorder() { this.inorderR(this.vrchol); System.out.println(); } public void postorderR(Polozka polozka) { if (polozka.vlevo != null) this.postorderR(polozka.vlevo); if (polozka.vpravo != null) this.postorderR(polozka.vpravo); System.out.print(polozka.klic+" "); } public void postorder() { this.postorderR(this.vrchol); System.out.println(); } public void hledatR(Polozka polozka, int klic) { if (polozka == null) return; System.out.print(polozka.klic+" "); if (polozka.klic > klic) { this.hledatR(polozka.vlevo, klic); } else { this.hledatR(polozka.vpravo, klic); } } public void hledat(int klic) { this.hledatR(this.vrchol, klic); System.out.println(); } }