gitweb on Svarog
projekti pod git sistemom za održavanje verzija -- projects under the git version control system--- a/skripta-spa1-sadrzaj.tex
+++ b/skripta-spa1-sadrzaj.tex
\newcommand{\autor}{Vladimir Kurbalija, Milos Radovanovic, Doni Pracner}
\newcommand{\naslov}{Skripta za vezbe iz predmeta "Strukture podataka
i algoritmi 1"}
-\newcommand{\datum}{Februar 2014, Novi Sad}
-\newcommand{\verzija}{ver 14a-\varijacija}
+\newcommand{\datum}{April 2014, Novi Sad}
+\newcommand{\verzija}{ver 14c-\varijacija}
%varijacija je definisana u fajlu koji ukljucuje ovaj
\title{\naslov -- \verzija}
END;
END DodajKraj;
-PROCEDURE DodajSort(VAR lista:brojevi; br:CARDINAL);
+PROCEDURE DodajSort(VAR lista:brojevi; br:INTEGER);
(* dodaje broj tako da lista ostane sortirana
(podrazumeva se da je vec sortirana) *)
VAR
END DodajSort;
\end{lstlisting}
+Kod svih procedura se mogu primeniti i rekurzivne varijante. Sledi
+primer za kreiranje sortirane liste.
+
+\begin{codeblock}
+PROCEDURE DodajSortRek(VAR lista:brojevi; br:INTEGER);
+(* Koristi se cinjenica da prosledjujemo pokazivac
+po referenci, tj. da ga mozemo menjati unutar procedure *)
+VAR
+ temp : brojevi;
+BEGIN
+ IF (lista = NIL) OR (lista^.info>=br) THEN
+ (* Izlaz iz rekurzije. Ubacivanje u praznu listu,
+ na kraj liste ili na odgovarajuce mesto *)
+ NEW(temp);
+ temp^.info:=br;
+ temp^.veza:=lista;
+ lista:=temp;
+ ELSE
+ DodajSortRek(lista^.veza, br);
+ END;
+END DodajSortRek;
+\end{codeblock}
+
+\manbreakJK
+
\subsection{Zadatak: Prikaz osnovih operacija nad listama}
\begin{lstlisting}[style=codeblock]
\pagenumbering{Roman}
\input{xds-uputstvo}
+\sectionbreak
+\input{xds-komandna-linija}
+
\mainend