gitweb on Svarog

projekti pod git sistemom za održavanje verzija -- projects under the git version control system
stabla, zadatak sa drugih vezbi
[spa2-materijali.git] / Stabla / konkretnoStablo / _zadatak-stabla2.txt
1 Zadatak
2 =======
4 Data je klasa koja implementira binarno stablo osoba.
5 Takodje, dat je i glavni program koji ucitava jedno stablo i
6 poziva neke od operacija nad njim.
8 Implementirati operacije navedene u nastavku i ilustrovati
9 njihov rad pozivanjem iz glavnog programa. Svaki metod je
10 potrebno implementirati kao javan metod klase koja
11 predstavlja stablo, a po potrebi se definisu pomocni
12 staticki metodi koji ce rekurzivno obilaziti stablo. Pomocni
13 metodi ce cesto biti istog imena kao i glavni metod.
15 Primer implementacije metoda i njihovih poziva postoji u
16 `StabloOsobaProgram.java`.
18 Preporucuje se da se zadati metodi dodaju u
19 `MinimalnoStablo.java`, mada ih je moguce dodavati i u
20 `StabloOsobaProgram.java` ili `MojeStablo.java`.
23 Metodi
24 ======
27 public double prosecnaPlata()
28 -----------------------------
30 U klasi StabloOsoba, implementirati metod koji
31 izracunava i vraca prosecnu platu svih zaposlenih.
33 Ako je stablo prazno, prosecna plata je 0.0.
36 public Osoba osobaSaNajvecomPlatom()
37 ------------------------------------
39 U klasi StabloOsoba, implementirati metod koji
40 pronalazi i vraca osobu koja ima najvecu platu.
43 public List<Osoba> sviPodredjeni(Osoba o)
44 -----------------------------------------
46 U klasi StabloOsoba, implementirati metod koji
47 vraca listu svih zaposlenih koji su podredjeni
48 datoj osobi.
50 Lista ne ukljucuje prosledjenu osobu.
52 Ako je stablo prazno, ili se osoba ne nalazi u
53 stablu, vratiti praznu listu.
56 public List<Osoba> sviNadredjeni(Osoba o)
57 -----------------------------------------
59 U klasi StabloOsoba, implementirati metod koji
60 vraca listu svih nadredjenih datoj osobi pocevsi
61 od generalnog direktora.
64 public List<Osoba> sviSaIstomPlatom()
65 -------------------------------------
67 U klasi StabloOsoba, implementirati metod koji
68 pronalazi i vraca sve osobe koje imaju platu
69 istu kao jos neka druga osoba.
72 public void ispisiOsobeSaVecomPlatomOdSefa()
73 --------------------------------------------
75 U klasi StabloOsoba, implementirati metod koji
76 ispisuje sve osobe koje imaju vecu platu od svog sefa.
79 public List<Osoba> vecaPlataOdDirektora()
80 -----------------------------------------
82 U klasi StabloOsoba, implementirati metod koji
83 vraca listu svih zaposlenih koji imaju vecu
84 platu od generalnog direktora (koren celog stabla).
87 public List<Osoba> plataIspodProseka()
88 --------------------------------------
90 U klasi StabloOsoba, implementirati metod koji
91 vraca listu svih zaposlenih koji imaju platu ispod
92 proseka u firmi.
95 public Osoba drugaPoReduSaNajvecomPlatom()
96 ------------------------------------------
98 U klasi StabloOsoba, implementirati metod koji
99 pronalazi i vraca osobu koja je druga po redu
100 po velicini plate.
Svarog.pmf.uns.ac.rs/gitweb maintanance Doni Pracner