gitweb on Svarog

projekti pod git sistemom za održavanje verzija -- projects under the git version control system
Liste, osnovne operacije, primer
[spa1-materijali.git] / kodovi / liste / ListeOsnovneOperacije.java
1 /**
2 * Prikaz osnovnih operacija sa jednostruko povezanom listom - formiranje i
3 * stampanje
4 */
5 public class ListeOsnovneOperacije {
7 public static void main(String[] arg) {
8 ListaBrojeva lista = new ListaBrojeva();
9 int br;
10 System.out.println("unesite n (broj brojeva): ");
11 int n = Svetovid.in.readInt();
12 System.out.println("unesite brojeve");
13 for (int i = 0; i < n; i++) {
14 br = Svetovid.in.readInt();
15 lista.dodajNaPocetak(br);
16 }
17 System.out.println("Sadrzaj liste:");
18 lista.stampajNaEkran();
19 }
20 }
22 /**
23 * ListaBrojeva predstavlja listu brojeva sa odgovarajucim operacijama za
24 * dodavanje u listu i za stampanje iste.
25 */
26 class ListaBrojeva {
28 /**
29 * Element u klasi ListaBrojeva. Sadrzi informaciju, odnosno broj i
30 * pokazivac na sledeci element u listi.
31 *
32 * Klasa je napravljena kao unutrasnja od ListaBrojeva posto zapravo nikog
33 * van klase i ne treba da interesuje kako iznutra predstavljamo podatke.
34 *
35 * Klasa je mogla biti postavljena i na istom nivou kao ListaBrojeva i bila
36 * bi ista funkcionalnost.
37 */
38 class Element {
39 int info;
40 Element veza;
42 public Element(int br) {
43 this.info = br;
44 this.veza = null;
45 }
47 public String toString() {
48 return info + "";
49 }
50 }
52 // pokazivac na prvi element liste
53 Element prvi;
55 /** Kreira praznu listu brojeva. */
56 public ListaBrojeva() {
57 this.prvi = null;
58 }
60 /** Dodaje novi broj na pocetak liste */
61 public void dodajNaPocetak(int br) {
62 Element novi = new Element(br);
63 novi.veza = prvi;
64 prvi = novi;
65 }
67 /** Vraca da li je lista prazna */
68 public boolean jePrazna() {
69 return prvi == null;
70 }
72 public void stampajNaEkran() {
73 if (jePrazna()) {
74 Svetovid.out.println("Lista je prazna");
75 } else {
76 Svetovid.out.println("Sadrzaj liste:");
77 Element tekuci = prvi;
78 while (tekuci != null) {
79 System.out.println(tekuci.info);
80 tekuci = tekuci.veza;
81 }
82 System.out.println();
83 }
84 }
86 public String toString() {
87 String rez = "Lista: [ ";
88 Element tekuci = prvi;
89 while (tekuci != null) {
90 rez += tekuci.info + " ";
91 tekuci = tekuci.veza;
92 }
93 rez += "]";
94 return rez;
95 }
97 }
Svarog.pmf.uns.ac.rs/gitweb maintanance Doni Pracner