zadatak iz spa 1.karaga/zalg98gl.pdf · zadatak iz spa 8. napiˇsite program za zbrajanje i...

33
Zadatak iz SPA 1. Implementirajte a.t.p. LIST pomo´ cu pointera i napiˇ site potprogram MERGE-SORT za sortiranje liste. Program treba omogu´ citi sortiranje silazno i uzlazno. Zadatak iz SPA 2. Implementirajte a.t.p. LIST pomo´ cu kursora i napiˇ site potprogram MERGE-SORT za sortiranje liste. Program treba omogu´ citi sortiranje silazno i uzlazno. Zadatak iz SPA 3. Implementirajte a.t.p. LIST pomo´ cu pointera i napiˇ site potprogram INSERTION-SORT za sortiranje liste. Program treba omogu´ citi sorti- ranje silazno i uzlazno. Zadatak iz SPA 4. Implementirajte a.t.p. LIST pomo´ cu kursora i napiˇ site potprogram INSERTION-SORT za sortiranje liste. Program treba omogu´ citi sorti- ranje silazno i uzlazno. Zadatak iz SPA 5. Implementirajte a.t.p. LIST pomo´ cu pointera i implementirajte Huff- mannov algoritam za saˇ zimanje n sortiranih listi (implementiranih na gore naveden naˇ cin). Zadatak iz SPA 6. Implementirajte a.t.p. LIST pomo´ cu kursora i implementirajte Huff- mannov algoritam za saˇ zimanje n sortiranih listi (implementiranih na gore naveden naˇ cin). Zadatak iz SPA 7. Napiˇ site program za zbrajanje i mnoˇ zenje dvaju polinoma zapisanih u obliku: p(x)= c 1 x e 1 + ... + c n x e n , gdje su e 1 >e 2 > ... > e n 0. Polinome prikaˇ zite vezanom listom. A.t.p. LIST implementirajte pomo´ cu pointera tako da i-ta ´ celija liste sadrˇ zi koeficijent c i , eksponent e i i pointer na slijede´ cu ´ celiju.

Upload: others

Post on 02-Aug-2020

9 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Zadatak iz SPA 1.karaga/Zalg98gl.pdf · Zadatak iz SPA 8. Napiˇsite program za zbrajanje i mnoˇzenje dvaju polinoma zapisanih u obliku: p(x) = c1xe1 +::: + cnxen; gdje su e1 > e2

Zadatak iz SPA 1.

Implementirajte a.t.p. LIST pomocu pointera i napisite potprogramMERGE-SORT za sortiranje liste. Program treba omoguciti sortiranjesilazno i uzlazno.

Zadatak iz SPA 2.

Implementirajte a.t.p. LIST pomocu kursora i napisite potprogramMERGE-SORT za sortiranje liste. Program treba omoguciti sortiranjesilazno i uzlazno.

Zadatak iz SPA 3.

Implementirajte a.t.p. LIST pomocu pointera i napisite potprogramINSERTION-SORT za sortiranje liste. Program treba omoguciti sorti-ranje silazno i uzlazno.

Zadatak iz SPA 4.

Implementirajte a.t.p. LIST pomocu kursora i napisite potprogramINSERTION-SORT za sortiranje liste. Program treba omoguciti sorti-ranje silazno i uzlazno.

Zadatak iz SPA 5.

Implementirajte a.t.p. LIST pomocu pointera i implementirajte Huff-mannov algoritam za sazimanje n sortiranih listi (implementiranih nagore naveden nacin).

Zadatak iz SPA 6.

Implementirajte a.t.p. LIST pomocu kursora i implementirajte Huff-mannov algoritam za sazimanje n sortiranih listi (implementiranih nagore naveden nacin).

Zadatak iz SPA 7.

Napisite program za zbrajanje i mnozenje dvaju polinoma zapisanihu obliku: p(x) = c1x

e1 + ... + cnxen , gdje su e1 > e2 > ... > en ≥0. Polinome prikazite vezanom listom. A.t.p. LIST implementirajtepomocu pointera tako da i−ta celija liste sadrzi koeficijent ci, eksponentei i pointer na slijedecu celiju.

Page 2: Zadatak iz SPA 1.karaga/Zalg98gl.pdf · Zadatak iz SPA 8. Napiˇsite program za zbrajanje i mnoˇzenje dvaju polinoma zapisanih u obliku: p(x) = c1xe1 +::: + cnxen; gdje su e1 > e2

Zadatak iz SPA 8.

Napisite program za zbrajanje i mnozenje dvaju polinoma zapisanihu obliku: p(x) = c1x

e1 + ... + cnxen , gdje su e1 > e2 > ... > en ≥0. Polinome prikazite vezanom listom. A.t.p. LIST implementirajtepomocu kursora tako da i−ta celija liste sadrzi koeficijent ci, eksponentei i kursor na slijedecu celiju.

Zadatak iz SPA 9.

Napisite program koji racuna n−tu derivaciju polinoma zapisanog uobliku: p(x) = c1x

e1 + ... + cnxen , gdje su e1 > e2 > ... > en ≥

0. Polinome prikazite vezanom listom. A.t.p. LIST implementirajtepomocu pointera tako da i−ta celija liste sadrzi koeficijent ci, eksponentei i pointer na slijedecu celiju.

Zadatak iz SPA 10.

Napisite program koji racuna n−tu derivaciju polinoma zapisanog uobliku: p(x) = c1x

e1 + ... + cnxen , gdje su e1 > e2 > ... > en ≥

0. Polinome prikazite vezanom listom. A.t.p. LIST implementirajtepomocu kursora tako da i−ta celija liste sadrzi koeficijent ci, eksponentei i kursor na slijedecu celiju.

Zadatak iz SPA 11.

Implementirajte a.t.p. STACK pomocu pointera i napisite potprogramkoji aritmeticki izraz iz infix oblika prebacuje u postfix oblik. Problemtrebate rijesiti pomocu stoga.

Zadatak iz SPA 12.

Implementirajte a.t.p. STACK pomocu polja i napisite potprogramkoji aritmeticki izraz iz infix oblika prebacuje u postfix oblik. Problemtrebate rijesiti pomocu stoga.

Zadatak iz SPA 13.

Implementirajte a.t.p. STACK pomocu pointera i napisite potprogramkoji aritmeticki izraz iz infix oblika prebacuje u prefix oblik. Problemtrebate rijesiti pomocu stoga.

Page 3: Zadatak iz SPA 1.karaga/Zalg98gl.pdf · Zadatak iz SPA 8. Napiˇsite program za zbrajanje i mnoˇzenje dvaju polinoma zapisanih u obliku: p(x) = c1xe1 +::: + cnxen; gdje su e1 > e2

Zadatak iz SPA 14.

Implementirajte a.t.p. STACK pomocu polja i napisite potprogramkoji aritmeticki izraz iz infix oblika prebacuje u prefix oblik. Problemtrebate rijesiti pomocu stoga.

Zadatak iz SPA 15.

Implementirajte a.t.p. STACK pomocu pointera i napisite potprogramkoji racuna vrijednost aritmetickog izraza zadanog u postfix obliku.Problem trebate rijesiti pomocu stoga.

Zadatak iz SPA 16.

Implementirajte a.t.p. STACK pomocu polja i napisite potprogramkoji racuna vrijednost aritmetickog izraza zadanog u postfix obliku.Problem trebate rijesiti pomocu stoga.

Zadatak iz SPA 17.

Implementirajte a.t.p. STACK pomocu pointera i napisite potpro-gram koji racuna vrijednost aritmetickog izraza zadanog u prefix obliku.Problem trebate rijesiti pomocu stoga.

Zadatak iz SPA 18.

Implementirajte a.t.p. STACK pomocu polja i napisite potprogram kojiracuna vrijednost aritmetickog izraza zadanog u prefix obliku. Problemtrebate rijesiti pomocu stoga.

Zadatak iz SPA 19.

Implementirajte a.t.p. STACK pomocu pointera i napisite potprogramkoji logicki izraz iz infix oblika prebacuje u postfix oblik. Problemtrebate rijesiti pomocu stoga.

Zadatak iz SPA 20.

Implementirajte a.t.p. STACK pomocu polja i napisite potprogram kojilogicki izraz iz infix oblika prebacuje u postfix oblik. Problem trebaterijesiti pomocu stoga.

Page 4: Zadatak iz SPA 1.karaga/Zalg98gl.pdf · Zadatak iz SPA 8. Napiˇsite program za zbrajanje i mnoˇzenje dvaju polinoma zapisanih u obliku: p(x) = c1xe1 +::: + cnxen; gdje su e1 > e2

Zadatak iz SPA 21.

Implementirajte a.t.p. STACK pomocu pointera i napisite potprogramkoji logicki izraz iz infix oblika prebacuje u prefix oblik. Problem tre-bate rijesiti pomocu stoga.

Zadatak iz SPA 22.

Implementirajte a.t.p. STACK pomocu polja i napisite potprogram kojilogicki izraz iz infix oblika prebacuje u prefix oblik. Problem trebaterijesiti pomocu stoga.

Zadatak iz SPA 23.

Implementirajte a.t.p. STACK pomocu pointera i napisite potprogramkoji racuna vrijednost logickog izraza zadanog u postfix obliku. Prob-lem trebate rijesiti pomocu stoga.

Zadatak iz SPA 24.

Implementirajte a.t.p. STACK pomocu polja i napisite potprogram kojiracuna vrijednost logickog izraza zadanog u postfix obliku. Problemtrebate rijesiti pomocu stoga.

Zadatak iz SPA 25.

Implementirajte a.t.p. STACK pomocu pointera i napisite potprogramkoji racuna vrijednost logickog izraza zadanog u prefix obliku. Problemtrebate rijesiti pomocu stoga.

Zadatak iz SPA 26.

Implementirajte a.t.p. STACK pomocu polja i napisite potprogramkoji racuna vrijednost logickog izraza zadanog u prefix obliku. Problemtrebate rijesiti pomocu stoga.

Zadatak iz SPA 27.

Implementirajte a.t.p. BTREE pomocu pointera i napisite potprogramkoji reproducira binarno stablo na osnovu zadanog INORDER i PRE-ORDER obilaska.

Page 5: Zadatak iz SPA 1.karaga/Zalg98gl.pdf · Zadatak iz SPA 8. Napiˇsite program za zbrajanje i mnoˇzenje dvaju polinoma zapisanih u obliku: p(x) = c1xe1 +::: + cnxen; gdje su e1 > e2

Zadatak iz SPA 28.

Implementirajte a.t.p. BTREE pomocu polja i napisite potprogramkoji reproducira binarno stablo na osnovu zadanog INORDER i PRE-ORDER obilaska.

Zadatak iz SPA 29.

Implementirajte a.t.p. BTREE pomocu pointera i napisite potprogramkoji reproducira binarno stablo na osnovu zadanog INORDER i POS-TORDER obilaska.

Zadatak iz SPA 30.

Implementirajte a.t.p. BTREE pomocu polja i napisite potprogramkoji reproducira binarno stablo na osnovu zadanog INORDER i POS-TORDER obilaska.

Zadatak iz SPA 31.

Implementirajte a.t.p. BTREE pomocu pointera i napisite potprogramkoji aritmeticki izraz iz infix oblika prebacuje u postfix oblik pomoc ubinarnog stabla.

Zadatak iz SPA 32.

Implementirajte a.t.p. BTREE pomocu polja i napisite potprogramkoji aritmeticki izraz iz infix oblika prebacuje u postfix oblik pomoc ubinarnog stabla.

Zadatak iz SPA 33.

Implementirajte a.t.p. BTREE pomocu pointera i napisite potprogramkoji aritmeticki izraz iz infix oblika prebacuje u prefix oblik pomoc ubinarnog stabla.

Zadatak iz SPA 34.

Implementirajte a.t.p. BTREE pomocu polja i napisite potprogramkoji aritmeticki izraz iz infix oblika prebacuje u prefix oblik pomocubinarnog stabla.

Page 6: Zadatak iz SPA 1.karaga/Zalg98gl.pdf · Zadatak iz SPA 8. Napiˇsite program za zbrajanje i mnoˇzenje dvaju polinoma zapisanih u obliku: p(x) = c1xe1 +::: + cnxen; gdje su e1 > e2

Zadatak iz SPA 35.

Implementirajte a.t.p. BTREE pomocu pointera i napisite potprogramkoji kreira binarno stablo iz prefix oblika aritmetickog izraza. Za kon-trolu napravite i preorder obilazak dobivenog stabla.

Zadatak iz SPA 36.

Implementirajte a.t.p. BTREE pomocu polja i napisite potprogramkoji kreira binarno stablo iz prefix oblika aritmetickog izraza. Za kon-trolu napravite i preorder obilazak dobivenog stabla.

Zadatak iz SPA 37.

Implementirajte a.t.p. BTREE pomocu pointera i napisite potprogramkoji kreira binarno stablo iz postfix oblika aritmetickog izraza. Za kon-trolu napravite i postorder obilazak dobivenog stabla.

Zadatak iz SPA 38.

Implementirajte a.t.p. BTREE pomocu polja i napisite potprogramkoji kreira binarno stablo iz postfix oblika aritmetickog izraza. Za kon-trolu napravite i postorder obilazak dobivenog stabla.

Zadatak iz SPA 39.

Implementirajte a.t.p. BTREE pomocu pointera i napisite potprogramkoji logicki izraz iz infix oblika prebacuje u postfix oblik pomoc u bi-narnog stabla.

Zadatak iz SPA 40.

Implementirajte a.t.p. BTREE pomocu polja i napisite potprogramkoji logicki izraz iz infix oblika prebacuje u postfix oblik pomoc u bi-narnog stabla.

Zadatak iz SPA 41.

Implementirajte a.t.p. BTREE pomocu pointera i napisite potprogramkoji logicki izraz iz infix oblika prebacuje u prefix oblik pomoc u bina-rnog stabla.

Page 7: Zadatak iz SPA 1.karaga/Zalg98gl.pdf · Zadatak iz SPA 8. Napiˇsite program za zbrajanje i mnoˇzenje dvaju polinoma zapisanih u obliku: p(x) = c1xe1 +::: + cnxen; gdje su e1 > e2

Zadatak iz SPA 42.

Implementirajte a.t.p. BTREE pomocu polja i napisite potprogramkoji logicki izraz iz infix oblika prebacuje u prefix oblik pomocu bina-rnog stabla.

Zadatak iz SPA 43.

Implementirajte a.t.p. BTREE pomocu pointera i napisite potprogramkoji kreira binarno stablo iz prefix oblika logickog izraza. Za kontrolunapravite i preorder obilazak dobivenog stabla.

Zadatak iz SPA 44.

Implementirajte a.t.p. BTREE pomocu polja i napisite potprogramkoji kreira binarno stablo iz prefix oblika logickog izraza. Za kontrolunapravite i preorder obilazak dobivenog stabla.

Zadatak iz SPA 45.

Implementirajte a.t.p. BTREE pomocu pointera i napisite potprogramkoji kreira binarno stablo iz postfix oblika logickog izraza. Za kontrolunapravite i postorder obilazak dobivenog stabla.

Zadatak iz SPA 46.

Implementirajte a.t.p. BTREE pomocu polja i napisite potprogramkoji kreira binarno stablo iz postfix oblika logickog izraza. Za kontrolunapravite i postorder obilazak dobivenog stabla.

Zadatak iz SPA 47.

Implementirajte a.t.p. BTREE pomocu pointera i napisite potprogramza obilazak binarnog stabla po nivoima, tj. prvo se obilaze cvorovi nanivou 0,1,2,...itd.

Zadatak iz SPA 48.

Implementirajte a.t.p. BTREE pomocu polja i napisite potprogramza obilazak binarnog stabla po nivoima, tj. prvo se obilaze cvorovi nanivou 0,1,2,...itd.

Page 8: Zadatak iz SPA 1.karaga/Zalg98gl.pdf · Zadatak iz SPA 8. Napiˇsite program za zbrajanje i mnoˇzenje dvaju polinoma zapisanih u obliku: p(x) = c1xe1 +::: + cnxen; gdje su e1 > e2

Zadatak iz SPA 49.

Implementirajte a.t.p. BTREE pomocu pointera i napisite potprogramkoji racuna broj listova u binarnom stablu.

Zadatak iz SPA 50.

Implementirajte a.t.p. BTREE pomocu polja i napisite potprogramkoji racuna broj listova u binarnom stablu.

Zadatak iz SPA 51.

Implementirajte a.t.p. BTREE pomocu pointera i napisite potprogramkoji racuna broj unutarnjih cvorova u binarnom stablu.

Zadatak iz SPA 52.

Implementirajte a.t.p. BTREE pomocu polja i napisite potprogramkoji racuna broj unutarnjih cvorova u binarnom stablu.

Zadatak iz SPA 53.

Implementirajte a.t.p. BTREE pomocu pointera i napisite potprogramkoji racuna broj cvorova s dvoje djece u binarnom stablu.

Zadatak iz SPA 54.

Implementirajte a.t.p. BTREE pomocu polje i napisite potprogramkoji racuna broj cvorova s dvoje djece u binarnom stablu.

Zadatak iz SPA 55.

Implementirajte a.t.p. BTREE pomocu pointera i napisite potprogramkoji racuna broj cvorova koji imaju samo jedno djete u binarnom stablu.

Zadatak iz SPA 56.

Implementirajte a.t.p. BTREE pomocu polja i napisite potprogramkoji racuna broj cvorova koji imaju samo jedno djete u binarnom stablu.

Page 9: Zadatak iz SPA 1.karaga/Zalg98gl.pdf · Zadatak iz SPA 8. Napiˇsite program za zbrajanje i mnoˇzenje dvaju polinoma zapisanih u obliku: p(x) = c1xe1 +::: + cnxen; gdje su e1 > e2

Zadatak iz SPA 57.

Implementirajte a.t.p. BTREE pomocu pointera i napisite potprogramkoji ispisuje oznake listova u binarnom stablu u inorder redoslijedu.

Zadatak iz SPA 58.

Implementirajte a.t.p. BTREE pomocu polja i napisite potprogramkoji ispisuje oznake listova u binarnom stablu u inorder redoslijedu.

Zadatak iz SPA 59.

Implementirajte a.t.p. BTREE pomocu pointera i napisite potprogramkoji ispisuje oznake unutarnjih cvorova u binarnom stablu u inorderredoslijedu.

Zadatak iz SPA 60.

Implementirajte a.t.p. BTREE pomocu polja i napisite potprogramkoji ispisuje oznake unutarnjih cvorova u binarnom stablu u inorderredoslijedu.

Zadatak iz SPA 61.

Implementirajte a.t.p. BTREE pomocu pointera i napisite potprogramkoji ispisuje oznake cvorova s dvoje djece u binarnom stablu u inorderredoslijedu.

Zadatak iz SPA 62.

Implementirajte a.t.p. BTREE pomocu polje i napisite potprogramkoji ispisuje oznake cvorova s dvoje djece u binarnom stablu u inorderredoslijedu.

Zadatak iz SPA 63.

Implementirajte a.t.p. BTREE pomocu pointera i napisite potprogramkoji ispisuje oznake cvorova koji imaju samo jedno djete u binarnomstablu u inorder redoslijedu.

Zadatak iz SPA 64.

Implementirajte a.t.p. BTREE pomocu polja i napisite potprogramkoji ispisuje oznake cvorova koji imaju samo jedno djete u binarnomstablu u inorder redoslijedu.

Page 10: Zadatak iz SPA 1.karaga/Zalg98gl.pdf · Zadatak iz SPA 8. Napiˇsite program za zbrajanje i mnoˇzenje dvaju polinoma zapisanih u obliku: p(x) = c1xe1 +::: + cnxen; gdje su e1 > e2

Zadatak iz SPA 65.

Implementirajte a.t.p. TREE pomocu polja na osnovi veze ”cvor →roditelj” i napisite potprogram za preorder obilazak stabla. Pretpostavl-jamo da su braca poredan po imenima (indeksima).

Zadatak iz SPA 66.

Implementirajte a.t.p. TREE pomocu polja na osnovi veze ”cvor →(prvo dijete, iduci brat)” i napisite potprogram za preorder obilazakstabla.

Zadatak iz SPA 67.

Implementirajte a.t.p. TREE pomocu polja na osnovi veze ”cvor →(roditelj, (prvo dijete, iduci brat))” i napisite nerekurzivan (bez upotrebepomocnih struktura podataka!) potprogram za preorder obilazak sta-bla.

Zadatak iz SPA 68.

Neka je uredeno stablo prikazano pomocu slijedece strukture podataka:

type TREE = recordheader : array [1..maxnodes] of LIST ;labels : array [1..maxnodes] of labeltype ;root : node

end ;

Uz ovakvu reprezentaciju implementirajte a.t.p. TREE. Pretpostavl-jamo da je node tipa integer, labeltype je podatak tipa char, dok jea.t.p. LIST implementiran pomocu pointera, a header[i] predstavljalistu djece cvora i.

Zadatak iz SPA 69.

Neka su cvorovi uredenog stabla prikazani sa:

type celltype= recordlabel : labeltype ;first child, next sib : ↑celltype

end ;node = ↑celltype ;TREE = ↑celltype ;

Uz ovakav prikaz implementirajte a.t.p. TREE na osnovu veze ”cvor→ (prvo dijete, iduci brat)”. Pretpostavljamo da je labeltype podataktipa char.

Page 11: Zadatak iz SPA 1.karaga/Zalg98gl.pdf · Zadatak iz SPA 8. Napiˇsite program za zbrajanje i mnoˇzenje dvaju polinoma zapisanih u obliku: p(x) = c1xe1 +::: + cnxen; gdje su e1 > e2

Zadatak iz SPA 70.

Neka su cvorovi uredenog stabla prikazani sa:

type celltype= recordlabel : labeltype ;first child, next sib, last child : ↑celltype ;zadnji : boolean

end ;node = ↑celltype ;TREE = ↑celltype ;

gdje je first child pointer na prvo dijete cvora, next sib pointer na iducegbrata cvora, a last child pointer na zadnjeg djeteta cvora. Podatakzadnji je istina ako je to zadnje dijete cvora. Uz ovakav prikaz imple-mentirajte a.t.p. TREE. Pretpostavljamo da je labeltype podatak tipachar.

Zadatak iz SPA 71.

Napisite potprogram koji ce uredeno stablo prikazati kao binarno sta-blo. Uredeno stablo implementirajte pomocu pointera na osnovu ”cvor→ (prvo dijete, iduci brat)”, a binarno stablo prikazite pomocu point-era. (Cvorovi uredenog stabla su prikazani sa:

type celltype= recordlabel : labeltype ;first child, next sib : ↑celltype

end ;node = ↑celltype ; )

Zadatak iz SPA 72.

Napisite potprogram koji ce uredeno stablo prikazati kao binarno sta-blo. Uredeno stablo implementirajte pomocu polja na osnovu ”cvor →(prvo dijete, iduci brat)”, a binarno stablo prikazite pomocu pointera.

Zadatak iz SPA 73.

Implementirajte a.t.p. TREE pomocu polja na osnovu veze ”cvor →(prvo dijete, iduci brat)” i napisite potprogram za obilazak stabla ponivoima, tj. najprije trebate ispisati cvorove sa 0,1,2, ... itd. nivoa.

Page 12: Zadatak iz SPA 1.karaga/Zalg98gl.pdf · Zadatak iz SPA 8. Napiˇsite program za zbrajanje i mnoˇzenje dvaju polinoma zapisanih u obliku: p(x) = c1xe1 +::: + cnxen; gdje su e1 > e2

Zadatak iz SPA 74.

Implementirajte a.t.p. TREE pomocu pointera na osnovu veze ”cvor→ (prvo dijete, iduci brat)” i napisite potprogram za obilazak stablapo nivoima, tj. najprije trebate ispisati cvorove sa 0,1,2, ... itd. nivoa.(Cvorovi uredenog stabla prikazani su sa:

type celltype= recordlabel : labeltype ;first child, next sib : ↑celltype

end ;node = ↑celltype ; )

Zadatak iz SPA 75.

Implementirajte a.t.p. SET pomocu bit-vektora, uz pretpostavku daskupovi sadrze podatke tipa char i nadopunite skupovne operacije izimplementacije sa simetricnom razlikom, tj napisite dodatni potpro-gram koji racuna simetricnu razliku skupova.

Zadatak iz SPA 76.

Implementirajte a.t.p. SET pomocu sortirane vezane liste (veze u listisu uspostavljene pomocu pointera) i pretpostavku da skupovi sadrzepodatke tipa char. Te nadopunite skupovne operacije iz implementacijesa simetricnom razlikom, tj napisite dodatni potprogram koji racunasimetricnu razliku skupova.

Zadatak iz SPA 77.

Implementirajte a.t.p. SET pomocu sortirane vezane liste (veze u listisu uspostavljene pomocu kursora) i pretpostavku da skupovi sadrzepodatke tipa char. Te nadopunite skupovne operacije iz implementacijesa simetricnom razlikom, tj napisite dodatni potprogram koji racunasimetricnu razliku skupova.

Zadatak iz SPA 78.

Implementirajte a.t.p. SET pomocu sortirane liste (lista je implementi-rana pomocu polja) i pretpostavku da skupovi sadrze podatke tipa char.Te nadopunite skupovne operacije iz implementacije sa simetricnom ra-zlikom, tj napisite dodatni potprogram koji racuna simetricnu razlikudvaju skupova.

Page 13: Zadatak iz SPA 1.karaga/Zalg98gl.pdf · Zadatak iz SPA 8. Napiˇsite program za zbrajanje i mnoˇzenje dvaju polinoma zapisanih u obliku: p(x) = c1xe1 +::: + cnxen; gdje su e1 > e2

Zadatak iz SPA 79.

Implementirajte a.t.p. SET pomocu nesortirane vezane liste (veze ulisti su uspostavljene pomocu pointera) i pretpostavku da skupovi sadrzepodatke tipa char.

Zadatak iz SPA 80.

Implementirajte a.t.p. SET pomocu nesortirane vezane liste (veze ulisti su uspostavljene pomocu kursora) i pretpostavku da skupovi sadrzepodatke tipa char.

Zadatak iz SPA 81.

Implementirajte a.t.p. SET pomocu nesortirane liste (lista je imple-mentirana pomocu polja) i pretpostavku da skupovi sadrze podatketipa char.

Zadatak iz SPA 82.

Implementirajte a.t.p. MULTISET pomocu sortirane vezane liste, gdjesvaka celija liste sadrzi i dodatan podatak o broju pojavljivanja danogelementa u multiskupu. Veze u listi su uspostavljene pomocu point-era. Pretpostavljamo da multiskupovi sadrze podatke tipa char i da zaimplementaciju a.t.p. MULTISET su potrebne slicne operacije kao zaa.t.p. SET.

Zadatak iz SPA 83.

Implementirajte a.t.p. MULTISET pomocu sortirane vezane liste, gdjesvaka celija liste sadrzi i dodatan podatak o broju pojavljivanja danogelementa u multiskupu. Veze u listi su uspostavljene pomocu kursora.Pretpostavljamo da multiskupovi sadrze podatke tipa char i da za im-plementaciju a.t.p. MULTISET su potrebne slicne operacije kao zaa.t.p. SET.

Zadatak iz SPA 84.

Implementirajte a.t.p. DICTIONARY pomocu otvorene hash tablice.Prikazite vasom implementacijom skup rezerviranih rijeci u C-u.

Zadatak iz SPA 85.

Implementirajte a.t.p. DICTIONARY pomocu zatvorene hash tablice.Prikazite vasom implementacijom skup rezerviranih rijeci u C-u. Velicinutablice odredite sami, tako da bude u skladu sa velicinom skupa rez-erviranih rijeci u C-u.

Page 14: Zadatak iz SPA 1.karaga/Zalg98gl.pdf · Zadatak iz SPA 8. Napiˇsite program za zbrajanje i mnoˇzenje dvaju polinoma zapisanih u obliku: p(x) = c1xe1 +::: + cnxen; gdje su e1 > e2

Zadatak iz SPA 86.

Implementirajte a.t.p. DICTIONARY pomocu sortirane liste, gdje jelista prikazana pomocu polja. Prikazite vasom implementacijom skuprezerviranih rijeci u C-u. Elementi polja su stringovi.

Zadatak iz SPA 87.

Implementirajte a.t.p. DICTIONARY pomocu binarnog stabla trazenja,gdje je binarno stablo prikazano pomocu pointera. Prikazite vasom im-plementacijom skup rezerviranih rijeci u C-u.

Zadatak iz SPA 88.

Implementirajte a.t.p. DICTIONARY pomocu binarnog stabla trazenja,gdje je binarno stablo prikazano pomocu polja. Prikazite vasom imple-mentacijom skup rezerviranih rijeci u C-u.

Zadatak iz SPA 89.

Sortirajte zadanu listu pomocu binarnog stabla trazenja uzlazno i silaznokoristeci isto binarno stablo trazenja. Pretpostavimo da lista sadrzi el-emente tipa char. Binarno stablo trazenja je prikazano pomocu polja,a prikaz liste odaberite sami.

Zadatak iz SPA 90.

Sortirajte zadanu listu pomocu binarnog stabla trazenja uzlazno i silaznokoristeci isto binarno stablo trazenja. Pretpostavimo da lista sadrzi ele-mente tipa char. Binarno stablo trazenja je prikazano pomocu pointera,a prikaz liste odaberite sami.

Zadatak iz SPA 91.

Implementirajte a.t.p. PRIORITY QUEUE pomocu binarnog stablatrazenja. Pretpostavljamo da je binarno stablo prikazano pomocu point-era.

Zadatak iz SPA 92.

Implementirajte a.t.p. PRIORITY QUEUE pomocu binarnog stablatrazenja. Pretpostavljamo da je binarno stablo prikazano pomocu polja.

Zadatak iz SPA 93.

Implementirajte a.t.p. PRIORITY QUEUE pomocu hrpe. Pretpostavl-jamo da je hrpa prikazana pomocu pointera.

Page 15: Zadatak iz SPA 1.karaga/Zalg98gl.pdf · Zadatak iz SPA 8. Napiˇsite program za zbrajanje i mnoˇzenje dvaju polinoma zapisanih u obliku: p(x) = c1xe1 +::: + cnxen; gdje su e1 > e2

Zadatak iz SPA 94.

Implementirajte a.t.p. PRIORITY QUEUE pomocu hrpe. Pretpostavl-jamo da je hrpa prikazana pomocu polja.

Zadatak iz SPA 95.

Sortirajte zadanu listu pomocu hrpe uzlazno. Pretpostavimo da listasadrzi elemente tipa char. Hrpa je prikazana pomocu polja, a prikazliste odaberite sami.

Zadatak iz SPA 96.

Sortirajte zadanu listu pomocu hrpe uzlazno. Pretpostavimo da listasadrzi elemente tipa char. Hrpa je prikazana pomocu pointera, a prikazliste odaberite sami.

Zadatak iz SPA 97.

Sortirajte zadanu listu pomocu hrpe silazno. Pretpostavimo da listasadrzi elemente tipa char. Hrpa je prikazana pomocu polja, a prikazliste odaberite sami. (Ideja: u definiciji hrpe zamijenite ”≤” sa ”≥”.)

Zadatak iz SPA 98.

Sortirajte zadanu listu pomocu hrpe silazno. Pretpostavimo da listasadrzi elemente tipa char. Hrpa je prikazana pomocu pointera, a prikazliste odaberite sami. (Ideja: u definiciji hrpe zamijenite ”≤” sa ”≥”.)

Zadatak iz SPA 99.

Sazmite m uzlazno sortiranih listi pomocu hrpe. Hrpa je prikazanapomocu polja, a lista je vezana lista prikazana pomocu pointera. Pret-postavimo da lista sadrzi elemente tipa char.

Zadatak iz SPA 100.

Sazmite m uzlazno sortiranih listi pomocu hrpe. Hrpa je prikazanapomocu pointera, a lista je vezana lista prikazana pomocu pointera.Pretpostavimo da lista sadrzi elemente tipa char.

Page 16: Zadatak iz SPA 1.karaga/Zalg98gl.pdf · Zadatak iz SPA 8. Napiˇsite program za zbrajanje i mnoˇzenje dvaju polinoma zapisanih u obliku: p(x) = c1xe1 +::: + cnxen; gdje su e1 > e2

Zadatak iz SPA 101.

Sazmite m uzlazno sortiranih listi pomocu hrpe. Hrpa je prikazanapomocu polja, a lista je vezana lista i veze su prikazane pomocu kursora.Pretpostavimo da lista sadrzi elemente tipa char.

Zadatak iz SPA 102.

Sazmite m uzlazno sortiranih listi pomocu hrpe. Hrpa je prikazanapomocu pointera, a lista je vezana lista i veze su prikazane pomocukursora. Pretpostavimo da lista sadrzi elemente tipa char.

Zadatak iz SPA 103.

Sazmite m silazno sortiranih listi pomocu hrpe. Hrpa je prikazanapomocu polja, a lista je vezana lista prikazana pomocu pointera. Pret-postavimo da lista sadrzi elemente tipa char. (Ideja: u definiciji hrpezamijenite ”≤” sa ”≥”.)

Zadatak iz SPA 104.

Sazmite m silazno sortiranih listi pomocu hrpe. Hrpa je prikazanapomocu pointera, a lista je vezana lista prikazana pomocu pointera.Pretpostavimo da lista sadrzi elemente tipa char. (Ideja: u definicijihrpe zamijenite ”≤” sa ”≥”.)

Zadatak iz SPA 105.

Sazmite m silazno sortiranih listi pomocu hrpe. Hrpa je prikazanapomocu polja, a lista je vezana lista i veze su prikazane pomocu kursora.Pretpostavimo da lista sadrzi elemente tipa char. (Ideja: u definicijihrpe zamijenite ”≤” sa ”≥”.)

Zadatak iz SPA 106.

Sazmite m silazno sortiranih listi pomocu hrpe. Hrpa je prikazanapomocu pointera, a lista je vezana lista i veze su prikazane pomocukursora. Pretpostavimo da lista sadrzi elemente tipa char. (Ideja: udefiniciji hrpe zamijenite ”≤” sa ”≥”.)

Zadatak iz SPA 107.

Implementirajte a.t.p. MAPPING pomocu otvorenog hashiranja saB pretinaca i napisite potprogram koji ce provjeriti da li je funkcijainjekcija.

Page 17: Zadatak iz SPA 1.karaga/Zalg98gl.pdf · Zadatak iz SPA 8. Napiˇsite program za zbrajanje i mnoˇzenje dvaju polinoma zapisanih u obliku: p(x) = c1xe1 +::: + cnxen; gdje su e1 > e2

Zadatak iz SPA 108.

Implementirajte a.t.p. MAPPING pomocu sortiranog polja sa M eleme-nata i napisite potprogram koji ce provjeriti da li je funkcija injekcija.

Zadatak iz SPA 109.

Implementirajte a.t.p. MAPPING pomocu ”karakteristicnog polja” saN elemenata i napisite potprogram koji ce provjeriti da li je funkcijainjekcija.

Zadatak iz SPA 110.

Implementirajte a.t.p. MAPPING pomocu otvorenog hashiranja saB pretinaca i napisite potprogram koji ce provjeriti da li je funkcijasurjekcija. (Smisleno zadajte domenu i kodomenu.)

Zadatak iz SPA 111.

Implementirajte a.t.p. MAPPING pomocu sortiranog polja sa M eleme-nata i napisite potprogram koji ce provjeriti da li je funkcija surjekcija.(Smisleno zadajte domenu i kodomenu.)

Zadatak iz SPA 112.

Implementirajte a.t.p. MAPPING pomocu ”karakteristicnog polja” saN elemenata i napisite potprogram koji ce provjeriti da li je funkcijasurjekcija. (Smisleno zadajte domenu i kodomenu.)

Zadatak iz SPA 113.

Implementirajte a.t.p. QUEUE pomocu cirkularnog polja (bez do-datne celije za oznacavanje punog reda). Nadalje napravite algoritamza pronalazenje skupa svih dostupnih cvorova orijentiranog grafa.

Zadatak iz SPA 114.

Implementirajte a.t.p. QUEUE pomocu cirkularnog polja sa dodatnomcelijom za oznacavanje punog reda. Nadalje napravite algoritam zapronalazenje skupa svih dostupnih cvorova orijentiranog grafa.

Page 18: Zadatak iz SPA 1.karaga/Zalg98gl.pdf · Zadatak iz SPA 8. Napiˇsite program za zbrajanje i mnoˇzenje dvaju polinoma zapisanih u obliku: p(x) = c1xe1 +::: + cnxen; gdje su e1 > e2

Zadatak iz SPA 115.

Implementirajte a.t.p. QUEUE pomocu vezane liste. Vezana listaje implementirana pomocu pointera. Nadalje napravite algoritam zapronalazenje skupa svih dostupnih cvorova orijentiranog grafa.

Zadatak iz SPA 116.

Implementirajte a.t.p. QUEUE pomocu vezane liste. Vezana listaje implementirana pomocu kursora. Nadalje napravite algoritam zapronalazenje skupa svih dostupnih cvorova orijentiranog grafa.

Zadatak iz SPA 117.

Implementirajte a.t.p. QUEUE cirkularnim poljem uz pamcenje brojaelemenata u redu.

Zadatak iz SPA 118.

Implementirajte a.t.p. QUEUE cirkularnim poljem uz pamcenje brojaelemenata u redu. Nadalje napravite algoritam za pronalazenje skupasvih dostupnih cvorova orijentiranog grafa.

Zadatak iz SPA 119.

Dvostrani red DQUEUE je lista kojoj se elementi mogu ubacivati iizbacivati na bilo kojem kraju (no ne u sredini). Implementirajte dvos-trani red pomocu polja.

Zadatak iz SPA 120.

Dvostrani red DQUEUE je lista kojoj se elementi mogu ubacivati iizbacivati na bilo kojem kraju (no ne u sredini). Implementirajte dvos-trani red pomocu vezane liste. Vezanu listu implementirajte pomocupointera.

Zadatak iz SPA 121.

Dvostrani red DQUEUE je lista kojoj se elementi mogu ubacivati iizbacivati na bilo kojem kraju (no ne u sredini). Implementirajte dvos-trani red pomocu vezane liste. Vezanu listu implementirajte pomocukursora.

Page 19: Zadatak iz SPA 1.karaga/Zalg98gl.pdf · Zadatak iz SPA 8. Napiˇsite program za zbrajanje i mnoˇzenje dvaju polinoma zapisanih u obliku: p(x) = c1xe1 +::: + cnxen; gdje su e1 > e2

Zadatak iz SPA 122.

Razradite ”ternary search” algoritam koji ce u prvom prolazu prov-jeriti da li se trazeni element nalazi na mjestu n

3ili na 2n

3. Ovisno o

rezultatu upita daljnju pretragu ce provoditi na odgovarajucoj trecinisortirane liste. Implementirajte a.t.p. SET pomocu sortirane liste (listaje prikazana pomocu polja) i neka operacija MEMBER koristi algoritam”ternary search”.

Zadatak iz SPA 123.

Napisite program koji ce ucitati dva prirodna broja x, y (neovisno omaxint) u bazi 10. Program treba te brojeve pretvoriti u binarne bro-jeve i treba pomocu algoritma za mnozenje n-bitnih brojeva izracunatix · y. Rezultat korisniku vratite u dekadskom obliku.

Zadatak iz SPA 124.

Smislite algoritam i napisite odgovarajuci program za sortiranje m vek-tora oblika: X(r) = (x

(r)1 , ..., x(r)

n ) r = 1, ..,m. Kazemo da je vektorX(j) < X(k) ako postoji i, 1 ≤ i ≤ n takav da vrijedi: x(j)

r = x(k)r za

sve 1 ≤ r < i i x(j)i < x

(k)i .

Zadatak iz SPA 125.

Smislite algoritam za sortiranje m rijeci po abecedi i napisite odgo-varajuci program. Rijec je niz slova (velikih ili malih) engleske abecede.Rijeci su povezani u vezanu listu (veza je dana sa pointerima). Samarijec neka je prikazana sa poljem.

Zadatak iz SPA 126.

Rijesite 0/1 problem ranca pohlepnim algoritmom i napisite odgovarajuciprogram. Tekst problema procitajte iz predavanja.

Zadatak iz SPA 127.

Rijesite problem vracanja novca i napisite odgovarajuci program uzpretpostavku da su nam na raspolaganju novcanice od po 1000, 500,200, 100, 50, 20, 10, 5, 2 i 1 KN, a broj pojedinih apoena je dan sa(n1000, n500, n200, n100, n50, n20, n10, n5, n2, n1).

Page 20: Zadatak iz SPA 1.karaga/Zalg98gl.pdf · Zadatak iz SPA 8. Napiˇsite program za zbrajanje i mnoˇzenje dvaju polinoma zapisanih u obliku: p(x) = c1xe1 +::: + cnxen; gdje su e1 > e2

Zadatak iz SPA 128.

Smislite algoritam i napisite odgovarajuci program za slijedeci problem:Kako rasporediti n radnika za n poslova, ako vij > 0 oznacava cijenurada ako i-ti radnik izvrsava j-ti posao. Uzet cemo da jedan radnikmoze raditi samo jedan posao. Pohlepnim algoritmom nadite mini-malnu cijenu radne snage.

Zadatak iz SPA 129.

Smislite algoritam i napisite odgovarajuci program za slijedeci problem:Kako rasporediti n radnika za n poslova, ako vij > 0 oznacava cijenurada ako i-ti radnik izvrsava j-ti posao. Uzet cemo da jedan radnik mozeraditi samo jedan posao. Pohlepnim algoritmom nadite maksimalnucijenu radne snage.

Zadatak iz SPA 130.

Zbog strajka prijevoznika u tvornici su prinudeni n vrsta proizvoda sm-jestiti u hladnjacu. Ako je kapacitet hladnjace C, cijena pi, a volumenVi i-tog proizvoda, onda odredite koje proizvode treba staviti u hlad-njacu da tvornica ima minimalan gubitak.Pretpostavljamo da su proizvodi ne dijeljivi. Smislite algoritam i napisiteodgovarajuci program za dani problem.

Zadatak iz SPA 131.

Zbog strajka prijevoznika u tvornici su prinudeni n vrsta proizvoda sm-jestiti u hladnjacu. Ako je kapacitet hladnjace C, cijena pi, a volumenVi i-tog proizvoda, onda odredite koje proizvode treba staviti u hlad-njacu da tvornica ima minimalan gubitak.Pretpostavljamo da su proizvodi djeljivi. Smislite algoritam i napisiteodgovarajuci program za dani problem.

Zadatak iz SPA 132.

Zeljeznicu muci problem: Kako prevesti iz grada A u grad B n proizvodauz minimalni trosak, tj. pomocu najmanjeg broja kola? Na kolod-voru su na raspolaganju k vrsta kola sa kapacitetima c1, ..., ck, a brojkola s istim kapacitetom je neogranicen. Tezine proizvoda su dani saw1, ..., wn. Pretpostavljamo da su proizvodi ne djeljivi. Smislite algori-tam i napisite odgovarajuci program za dani problem.

Page 21: Zadatak iz SPA 1.karaga/Zalg98gl.pdf · Zadatak iz SPA 8. Napiˇsite program za zbrajanje i mnoˇzenje dvaju polinoma zapisanih u obliku: p(x) = c1xe1 +::: + cnxen; gdje su e1 > e2

Zadatak iz SPA 133.

Zeljeznicu muci problem: Kako prevesti iz grada A u grad B n proizvodauz minimalni trosak, tj. pomocu najmanjeg broja kola? Na kolodvorusu na raspolaganju k vrsta kola sa kapacitetima c1, ..., ck, a broj kola s is-tim kapacitetom je neogranicen. Tezine proizvoda su dani sa w1, ..., wn.Pretpostavljamo da su prvih k proizvoda ne djeljivi, a ostali su djeljivi.Smislite algoritam i napisite odgovarajuci program za dani problem.

Zadatak iz SPA 134.

Zeljeznicu muci problem: Kako prevesti iz grada A u grad B n proizvodauz minimalni trosak, tj. pomocu najmanjeg broja kola? Na kolodvorusu na raspolaganju k vrsta kola sa kapacitetima c1, ..., ck, a broj kolas istim kapacitetom je dan sa n1, ..., nk. Tezine proizvoda su dani saw1, ..., wn. Pretpostavljamo da su proizvodi ne djeljivi. Smislite algori-tam i napisite odgovarajuci program za dani problem.

Zadatak iz SPA 135.

Zeljeznicu muci problem: Kako prevesti iz grada A u grad B n proizvodauz minimalni trosak, tj. pomocu najmanjeg broja kola? Na kolodvorusu na raspolaganju k vrsta kola sa kapacitetima c1, ..., ck, a broj kolas istim kapacitetom je dan sa n1, ..., nk. Tezine proizvoda su dani saw1, ..., wn. Pretpostavljamo da su prvih k proizvoda ne djeljivi, a ostalisu djeljivi. Smislite algoritam i napisite odgovarajuci program za daniproblem.

Zadatak iz SPA 136.

Neka je dan skup od n gradova i tablica udaljenosti izmedu gradova.Pronadite heuristicki algoritam i napisite odgovarajuci program kojidaje najkraci put koji prolazi svim gradovima samo jedanput. Odgo-varajuce strukture podataka smislite sami.

Zadatak iz SPA 137.

Neka je dan skup od n gradova i tablica udaljenosti izmedu gradova.Pronadite heuristicki algoritam i napisite odgovarajuci program kojidaje najduzi put koji prolazi svim gradovima samo jedanput. Odgo-varajuce strukture podataka smislite sami.

Page 22: Zadatak iz SPA 1.karaga/Zalg98gl.pdf · Zadatak iz SPA 8. Napiˇsite program za zbrajanje i mnoˇzenje dvaju polinoma zapisanih u obliku: p(x) = c1xe1 +::: + cnxen; gdje su e1 > e2

Zadatak iz SPA 138.

Student treba sakupiti n bodova za k dana. Da bi polozio i-ti ispit morasamo to uciti barem di > 0 dana. Za i-ti ispit student dobiva pi > 0bodova. Pomozite studentu kako da sakupi maksimalan broj bodovaza tih k dana. Pretpostavljamo da student moze izaci na ispit cim jespremio gradivo. Smislite algoritam i napisite odgovarajuci program zadani problem.

Zadatak iz SPA 139.

Neka su dani skupovi integera S1, ..., Sk. Pronadite sve k-torke (x1, ..., xk)takve da je xi ∈ Si za sve i = 1, ..., k i da vrijedi x1 + ... + xk = M .Smislite algoritam i napisite odgovarajuci program.

Zadatak iz SPA 140.

Neka su dani skupovi integera S1, ..., Sk. Pronadite sve k-torke (x1, ..., xk)takve da je xi ∈ Si za sve i = 1, ..., k i da vrijedi:x1 +x3 + ...+x2j+1 = M1 i x2 +x4 + ...+x2j = M2 za j = bk

2c. Smislite

algoritam i napisite odgovarajuci program.

Zadatak iz SPA 141.

Promatrajmo rang listu sahista. Svaki sahist zauzima jedinstveni ”rang”(poziciju) na listi. Novi sahist se dodaje na dno liste, tj. dodjeljuje muse najveci rang. Bilo koji sahist sa liste smije izazvati samo sahista kojije neposredno iznad njega na listi. Ukoliko izazivac pobijedi u partiji,tada ce oni zamijeniti mjesta na rang listi. Smislite algoritam i napisiteodgovarajuci program. za funkcionoranje rang liste.

Zadatak iz SPA 142.

Na teniski turnir se prijavilo n > 16 igraca i od toga neka ima 8 nosicaskupina. Organizirajte slijed meceva tako da se nosioci skupina sastanusamo u cetvrfinalu. Turnir se igra na ispadanje. Smislite algoritam inapisite odgovarajuci program. za organizaciju turnira.

Zadatak iz SPA 143.

Rijesite problem hanojskih tornjeva nerekurzivnim programom. Zapamcenje prethodnih stanja koristite stog. Stog implementirajte pomocuvezane liste. Vezana lista je implementirana pomocu pointera.

Page 23: Zadatak iz SPA 1.karaga/Zalg98gl.pdf · Zadatak iz SPA 8. Napiˇsite program za zbrajanje i mnoˇzenje dvaju polinoma zapisanih u obliku: p(x) = c1xe1 +::: + cnxen; gdje su e1 > e2

Zadatak iz SPA 144.

Rijesite problem hanojskih tornjeva nerekurzivnim programom. Zapamcenje prethodnih stanja koristite stog. Stog implementirajte pomocuvezane liste. Vezana lista je implementirana pomocu kursora.

Zadatak iz SPA 145.

Rijesite problem hanojskih tornjeva nerekurzivnim programom. Zapamcenje prethodnih stanja koristite stog. Stog implementirajte pomocupolja.

Zadatak iz SPA 146.

Implementirajte a.t.p. PRIORITY QUEUE pomocu hrpe. Pretpostavl-jamo da je hrpa prikazana pomocu polja.

Zadatak iz SPA 147.

Implementirajte a.t.p. BTREE pomocu pointera i napisite potprogramkoji reproducira binarno stablo na osnovu zadanog INORDER i POS-TORDER obilaska.

Zadatak iz SPA 148.

Smislite algoritam i napisite odgovarajuci program za sortiranje m vek-tora oblika: X(r) = (x

(r)1 , ..., x(r)

n ) r = 1, ..,m. Kazemo da je vektorX(j) < X(k) ako postoji i, 1 ≤ i ≤ n takav da vrijedi: x(j)

r = x(k)r za

sve 1 ≤ r < i i x(j)i < x

(k)i .

Zadatak iz SPA 149.

Implementirajte a.t.p. STACK pomocu pointera i napisite potprogramkoji racuna vrijednost logickog izraza zadanog u postfix obliku. Prob-lem trebate rijesiti pomocu stoga.

Zadatak iz SPA 150.

Na teniski turnir se prijavilo n > 16 igraca i od toga neka ima 8 nosicaskupina. Organizirajte slijed meceva tako da se nosioci skupina sastanusamo u cetvrfinalu. Turnir se igra na ispadanje. Smislite algoritam inapisite odgovarajuci program. za organizaciju turnira.

Zadatak iz SPA 151.

Implementirajte a.t.p. LIST pomocu pointera i implementirajte Huff-mannov algoritam za sazimanje n sortiranih listi (implementiranih nagore naveden nacin).

Page 24: Zadatak iz SPA 1.karaga/Zalg98gl.pdf · Zadatak iz SPA 8. Napiˇsite program za zbrajanje i mnoˇzenje dvaju polinoma zapisanih u obliku: p(x) = c1xe1 +::: + cnxen; gdje su e1 > e2

Zadatak iz SPA 152.

Implementirajte a.t.p. DICTIONARY pomocu binarnog stabla trazenja,gdje je binarno stablo prikazano pomocu pointera. Prikazite vasom im-plementacijom skup rezerviranih rijeci u C-u.

Zadatak iz SPA 153.

Implementirajte a.t.p. MULTISET pomocu sortirane vezane liste, gdjesvaka celija liste sadrzi i dodatan podatak o broju pojavljivanja danogelementa u multiskupu. Veze u listi su uspostavljene pomocu pointera.Pretpostavljamo da multiskupovi sadrze podatke tipa char i da zaimplementaciju a.t.p. MULTISET su potrebne slicne operacije kao zaa.t.p. SET.

Zadatak iz SPA 154.

Smislite algoritam za sortiranje m rijeci po abecedi i napisite odgo-varajuci program. Rijec je niz slova (velikih ili malih) engleske abecede.Rijeci su povezani u vezanu listu (veza je dana sa pointerima). Samarijec neka je prikazana sa poljem.

Zadatak iz SPA 155.

Implementirajte a.t.p. STACK pomocu polja i napisite potprogram kojilogicki izraz iz infix oblika prebacuje u prefix oblik. Problem trebaterijesiti pomocu stoga.

Zadatak iz SPA 156.

Implementirajte a.t.p. LIST pomocu kursora i napisite potprogramINSERTION-SORT za sortiranje liste. Program treba omoguciti sorti-ranje silazno i uzlazno.

Zadatak iz SPA 157.

Implementirajte a.t.p. STACK pomocu polja i napisite potprogramkoji racuna vrijednost logickog izraza zadanog u prefix obliku. Problemtrebate rijesiti pomocu stoga.

Zadatak iz SPA 158.

Implementirajte a.t.p. STACK pomocu pointera i napisite potprogramkoji racuna vrijednost logickog izraza zadanog u prefix obliku. Problemtrebate rijesiti pomocu stoga.

Page 25: Zadatak iz SPA 1.karaga/Zalg98gl.pdf · Zadatak iz SPA 8. Napiˇsite program za zbrajanje i mnoˇzenje dvaju polinoma zapisanih u obliku: p(x) = c1xe1 +::: + cnxen; gdje su e1 > e2

Zadatak iz SPA 159.

Neka su dani skupovi integera S1, ..., Sk. Pronadite sve k-torke (x1, ..., xk)takve da je xi ∈ Si za sve i = 1, ..., k i da vrijedi:x1 +x3 + ...+x2j+1 = M1 i x2 +x4 + ...+x2j = M2 za j = bk

2c. Smislite

algoritam i napisite odgovarajuci program.

Zadatak iz SPA 160.

Napisite program koji ce ucitati dva prirodna broja x, y (neovisno omaxint) u bazi 10. Program treba te brojeve pretvoriti u binarne bro-jeve i treba pomocu algoritma za mnozenje n-bitnih brojeva izracunatix · y. Rezultat korisniku vratite u dekadskom obliku.

Zadatak iz SPA 161.

Rijesite problem vracanja novca i napisite odgovarajuci program uzpretpostavku da su nam na raspolaganju novcanice od po 1000, 500,200, 100, 50, 20, 10, 5, 2 i 1 KN, a broj pojedinih apoena je dan sa(n1000, n500, n200, n100, n50, n20, n10, n5, n2, n1).

Zadatak iz SPA 162.

Implementirajte a.t.p. LIST pomocu kursora i implementirajte Huff-mannov algoritam za sazimanje n sortiranih listi (implementiranih nagore naveden nacin).

Zadatak iz SPA 163.

Rijesite 0/1 problem ranca pohlepnim algoritmom i napisite odgovarajuciprogram. Tekst problema procitajte iz predavanja.

Zadatak iz SPA 164.

Implementirajte a.t.p. BTREE pomocu polja i napisite potprogramkoji reproducira binarno stablo na osnovu zadanog INORDER i PRE-ORDER obilaska.

Zadatak iz SPA 165.

Implementirajte a.t.p. STACK pomocu polja i napisite potprogram kojiracuna vrijednost logickog izraza zadanog u postfix obliku. Problemtrebate rijesiti pomocu stoga.

Page 26: Zadatak iz SPA 1.karaga/Zalg98gl.pdf · Zadatak iz SPA 8. Napiˇsite program za zbrajanje i mnoˇzenje dvaju polinoma zapisanih u obliku: p(x) = c1xe1 +::: + cnxen; gdje su e1 > e2

Zadatak iz SPA 166.

Implementirajte a.t.p. LIST pomocu pointera i napisite potprogramINSERTION-SORT za sortiranje liste. Program treba omoguciti sorti-ranje silazno i uzlazno.

Zadatak iz SPA 167.

Promatrajmo rang listu sahista. Svaki sahist zauzima jedinstveni ”rang”(poziciju) na listi. Novi sahist se dodaje na dno liste, tj. dodjeljuje muse najveci rang. Bilo koji sahist sa liste smije izazvati samo sahista kojije neposredno iznad njega na listi. Ukoliko izazivac pobijedi u partiji,tada ce oni zamijeniti mjesta na rang listi. Smislite algoritam i napisiteodgovarajuci program. za funkcionoranje rang liste.

Zadatak iz SPA 168.

Rijesite problem hanojskih tornjeva nerekurzivnim programom. Zapamcenje prethodnih stanja koristite stog. Stog implementirajte pomocuvezane liste. Vezana lista je implementirana pomocu pointera.

Zadatak iz SPA 169.

Implementirajte a.t.p. BTREE pomocu polja i napisite potprogramkoji aritmeticki izraz iz infix oblika prebacuje u postfix oblik pomoc ubinarnog stabla.

Zadatak iz SPA 170.

Napisite program koji ce ucitati dva prirodna broja x, y (neovisno omaxint) u bazi 10. Program treba te brojeve pretvoriti u binarne bro-jeve i treba pomocu algoritma za mnozenje n-bitnih brojeva izracunatix · y. Rezultat korisniku vratite u dekadskom obliku.

Zadatak iz SPA 171.

Implementirajte a.t.p. STACK pomocu pointera i napisite potprogramkoji logicki izraz iz infix oblika prebacuje u prefix oblik. Problem tre-bate rijesiti pomocu stoga.

Zadatak iz SPA 172.

Implementirajte a.t.p. DICTIONARY pomocu otvorene hash tablice.Prikazite vasom implementacijom skup rezerviranih rijeci u C-u.

Page 27: Zadatak iz SPA 1.karaga/Zalg98gl.pdf · Zadatak iz SPA 8. Napiˇsite program za zbrajanje i mnoˇzenje dvaju polinoma zapisanih u obliku: p(x) = c1xe1 +::: + cnxen; gdje su e1 > e2

Zadatak iz SPA 173.

Implementirajte a.t.p. DICTIONARY pomocu zatvorene hash tablice.Prikazite vasom implementacijom skup rezerviranih rijeci u C-u. Velicinutablice odredite sami, tako da bude u skladu sa velicinom skupa rez-erviranih rijeci u C-u.

Zadatak iz SPA 174.

Implementirajte a.t.p. BTREE pomocu polja i napisite potprogramkoji aritmeticki izraz iz infix oblika prebacuje u prefix oblik pomocubinarnog stabla.

Zadatak iz SPA 175.

Implementirajte a.t.p. BTREE pomocu pointera i napisite potprogramkoji aritmeticki izraz iz infix oblika prebacuje u prefix oblik pomoc ubinarnog stabla.

Zadatak iz SPA 176.

Implementirajte a.t.p. BTREE pomocu pointera i napisite potprogramkoji aritmeticki izraz iz infix oblika prebacuje u postfix oblik pomoc ubinarnog stabla.

Zadatak iz SPA 177.

Rijesite problem hanojskih tornjeva nerekurzivnim programom. Zapamcenje prethodnih stanja koristite stog. Stog implementirajte pomocuvezane liste. Vezana lista je implementirana pomocu kursora.

Zadatak iz SPA 178.

Razradite ”ternary search” algoritam koji ce u prvom prolazu prov-jeriti da li se trazeni element nalazi na mjestu n

3ili na 2n

3. Ovisno o

rezultatu upita daljnju pretragu ce provoditi na odgovarajucoj trecinisortirane liste. Implementirajte a.t.p. SET pomocu sortirane liste (listaje prikazana pomocu polja) i neka operacija MEMBER koristi algoritam”ternary search”.

Zadatak iz SPA 179.

Implementirajte a.t.p. PRIORITY QUEUE pomocu hrpe. Pretpostavl-jamo da je hrpa prikazana pomocu pointera.

Zadatak iz SPA 180.

Rijesite problem hanojskih tornjeva nerekurzivnim programom. Zapamcenje prethodnih stanja koristite stog. Stog implementirajte pomocuvezane liste. Vezana lista je implementirana pomocu pointera.

Page 28: Zadatak iz SPA 1.karaga/Zalg98gl.pdf · Zadatak iz SPA 8. Napiˇsite program za zbrajanje i mnoˇzenje dvaju polinoma zapisanih u obliku: p(x) = c1xe1 +::: + cnxen; gdje su e1 > e2

Zadatak iz SPA 181.

Implementirajte a.t.p. BTREE pomocu polja i napisite potprogramkoji reproducira binarno stablo na osnovu zadanog INORDER i POS-TORDER obilaska.

Zadatak iz SPA 182.

Rijesite problem hanojskih tornjeva nerekurzivnim programom. Zapamcenje prethodnih stanja koristite stog. Stog implementirajte pomocupolja.

Zadatak iz SPA 183.

Student treba sakupiti n bodova za k dana. Da bi polozio i-ti ispit morasamo to uciti barem di > 0 dana. Za i-ti ispit student dobiva pi > 0bodova. Pomozite studentu kako da sakupi maksimalan broj bodovaza tih k dana. Pretpostavljamo da student moze izaci na ispit cim jespremio gradivo. Smislite algoritam i napisite odgovarajuci program zadani problem.

Zadatak iz SPA 184.

Implementirajte a.t.p. PRIORITY QUEUE pomocu binarnog stablatrazenja. Pretpostavljamo da je binarno stablo prikazano pomocu polja.

Zadatak iz SPA 185.

Sortirajte zadanu listu pomocu binarnog stabla trazenja uzlazno i silaznokoristeci isto binarno stablo trazenja. Pretpostavimo da lista sadrzi el-emente tipa char. Binarno stablo trazenja je prikazano pomocu polja,a prikaz liste odaberite sami.

Zadatak iz SPA 186.

Implementirajte a.t.p. DICTIONARY pomocu binarnog stabla trazenja,gdje je binarno stablo prikazano pomocu polja. Prikazite vasom imple-mentacijom skup rezerviranih rijeci u C-u.

Zadatak iz SPA 187.

Implementirajte a.t.p. DICTIONARY pomocu sortirane liste, gdje jelista prikazana pomocu polja. Prikazite vasom implementacijom skuprezerviranih rijeci u C-u. Elementi polja su stringovi.

Page 29: Zadatak iz SPA 1.karaga/Zalg98gl.pdf · Zadatak iz SPA 8. Napiˇsite program za zbrajanje i mnoˇzenje dvaju polinoma zapisanih u obliku: p(x) = c1xe1 +::: + cnxen; gdje su e1 > e2

Zadatak iz SPA 188.

Sortirajte zadanu listu pomocu binarnog stabla trazenja uzlazno i silaznokoristeci isto binarno stablo trazenja. Pretpostavimo da lista sadrzi el-emente tipa char. Binarno stablo trazenja je prikazano pomocu point-era, a prikaz liste odaberite sami.

Zadatak iz SPA 189.

Implementirajte a.t.p. PRIORITY QUEUE pomocu binarnog stablatrazenja. Pretpostavljamo da je binarno stablo prikazano pomocu point-era.

Zadatak iz SPA 190.

Implementirajte a.t.p. MULTISET pomocu sortirane vezane liste, gdjesvaka celija liste sadrzi i dodatan podatak o broju pojavljivanja danogelementa u multiskupu. Veze u listi su uspostavljene pomocu kursora.Pretpostavljamo da multiskupovi sadrze podatke tipa char i da zaimplementaciju a.t.p. MULTISET su potrebne slicne operacije kao zaa.t.p. SET.

Zadatak iz SPA 191.

Implementirajte a.t.p. LIST pomocu pointera i napisite potprogramINSERTION-SORT za sortiranje liste. Program treba omoguciti sorti-ranje silazno i uzlazno.

Zadatak iz SPA 192.

Implementirajte a.t.p. STACK pomocu polja i napisite potprogramkoji aritmeticki izraz iz infix oblika prebacuje u prefix oblik. Problemtrebate rijesiti pomocu stoga.

Zadatak iz SPA 193.

Implementirajte a.t.p. BTREE pomocu polja i napisite potprogramkoji kreira binarno stablo iz postfix oblika aritmetickog izraza. Za kon-trolu napravite i postorder obilazak dobivenog stabla.

Zadatak iz SPA 194.

Implementirajte a.t.p. BTREE pomocu polja i napisite potprogramkoji ispisuje oznake unutarnjih cvorova u binarnom stablu u inorderredoslijedu.

Zadatak iz SPA 195.

Page 30: Zadatak iz SPA 1.karaga/Zalg98gl.pdf · Zadatak iz SPA 8. Napiˇsite program za zbrajanje i mnoˇzenje dvaju polinoma zapisanih u obliku: p(x) = c1xe1 +::: + cnxen; gdje su e1 > e2

Implementirajte a.t.p. QUEUE pomocu vezane liste. Vezana listaje implementirana pomocu kursora. Nadalje napravite algoritam zapronalazenje skupa svih dostupnih cvorova orijentiranog grafa.

Zadatak iz SPA 196.

Implementirajte a.t.p. BTREE pomocu pointera i napisite potprogramkoji racuna broj cvorova koji imaju samo jedno djete u binarnom stablu.

Zadatak iz SPA 197.

Sazmite m silazno sortiranih listi pomocu hrpe. Hrpa je prikazanapomocu pointera, a lista je vezana lista prikazana pomocu pointera.Pretpostavimo da lista sadrzi elemente tipa char. (Ideja: u definicijihrpe zamijenite ”≤” sa ”≥”.)

Zadatak iz SPA 198.

Smislite algoritam i napisite odgovarajuci program za slijedeci problem:Kako rasporediti n radnika za n poslova, ako vij > 0 oznacava cijenurada ako i-ti radnik izvrsava j-ti posao. Uzet cemo da jedan radnikmoze raditi samo jedan posao. Pohlepnim algoritmom nadite mini-malnu cijenu radne snage.

Zadatak iz SPA 199.

Smislite algoritam i napisite odgovarajuci program za slijedeci problem:Kako rasporediti n radnika za n poslova, ako vij > 0 oznacava cijenurada ako i-ti radnik izvrsava j-ti posao. Uzet cemo da jedan radnik mozeraditi samo jedan posao. Pohlepnim algoritmom nadite maksimalnucijenu radne snage.

Zadatak iz SPA 200.

Implementirajte a.t.p. DICTIONARY pomocu sortirane liste, gdje jelista prikazana pomocu polja. Prikazite vasom implementacijom skuprezerviranih rijeci u C-u. Elementi polja su stringovi.

Zadatak iz SPA 201.

Napisite program za zbrajanje i mnozenje dvaju polinoma zapisanihu obliku: p(x) = c1x

e1 + ... + cnxen , gdje su e1 > e2 > ... > en ≥0. Polinome prikazite vezanom listom. A.t.p. LIST implementirajtepomocu kursora tako da i−ta celija liste sadrzi koeficijent ci, eksponentei i kursor na slijedecu celiju.

Zadatak iz SPA 202.

Page 31: Zadatak iz SPA 1.karaga/Zalg98gl.pdf · Zadatak iz SPA 8. Napiˇsite program za zbrajanje i mnoˇzenje dvaju polinoma zapisanih u obliku: p(x) = c1xe1 +::: + cnxen; gdje su e1 > e2

Napisite program koji racuna n−tu derivaciju polinoma zapisanog uobliku: p(x) = c1x

e1 + ... + cnxen , gdje su e1 > e2 > ... > en ≥

0. Polinome prikazite vezanom listom. A.t.p. LIST implementirajtepomocu pointera tako da i−ta celija liste sadrzi koeficijent ci, eksponentei i pointer na slijedecu celiju.

Zadatak iz SPA 203.

Napisite program koji racuna n−tu derivaciju polinoma zapisanog uobliku: p(x) = c1x

e1 + ... + cnxen , gdje su e1 > e2 > ... > en ≥

0. Polinome prikazite vezanom listom. A.t.p. LIST implementirajtepomocu kursora tako da i−ta celija liste sadrzi koeficijent ci, eksponentei i kursor na slijedecu celiju.

Zadatak iz SPA 204.

Implementirajte a.t.p. STACK pomocu pointera i napisite potprogramkoji aritmeticki izraz iz infix oblika prebacuje u postfix oblik. Problemtrebate rijesiti pomocu stoga.

Zadatak iz SPA 205.

Implementirajte a.t.p. STACK pomocu polja i napisite potprogramkoji aritmeticki izraz iz infix oblika prebacuje u postfix oblik. Problemtrebate rijesiti pomocu stoga.

Zadatak iz SPA 206.

Implementirajte a.t.p. STACK pomocu pointera i napisite potprogramkoji aritmeticki izraz iz infix oblika prebacuje u prefix oblik. Problemtrebate rijesiti pomocu stoga.

Zadatak iz SPA 207.

Implementirajte a.t.p. LIST pomocu kursora i implementirajte Huff-mannov algoritam za sazimanje n sortiranih listi (implementiranih nagore naveden nacin).

Zadatak iz SPA 208.

Napisite program za zbrajanje i mnozenje dvaju polinoma zapisanihu obliku: p(x) = c1x

e1 + ... + cnxen , gdje su e1 > e2 > ... > en ≥0. Polinome prikazite vezanom listom. A.t.p. LIST implementirajtepomocu pointera tako da i−ta celija liste sadrzi koeficijent ci, eksponentei i pointer na slijedecu celiju.

Zadatak iz SPA 209.

Page 32: Zadatak iz SPA 1.karaga/Zalg98gl.pdf · Zadatak iz SPA 8. Napiˇsite program za zbrajanje i mnoˇzenje dvaju polinoma zapisanih u obliku: p(x) = c1xe1 +::: + cnxen; gdje su e1 > e2

Implementirajte a.t.p. TREE pomocu polja na osnovi veze ”cvor →(roditelj, (prvo dijete, iduci brat))” i napisite nerekurzivan (bez upotrebepomocnih struktura podataka!) potprogram za preorder obilazak sta-bla.

Zadatak iz SPA 210.

Neka je uredeno stablo prikazano pomocu slijedece strukture podataka:

type TREE = recordheader : array [1..maxnodes] of LIST ;labels : array [1..maxnodes] of labeltype ;root : node

end ;

Uz ovakvu reprezentaciju implementirajte a.t.p. TREE. Pretpostavl-jamo da je node tipa integer, labeltype je podatak tipa char, dok jea.t.p. LIST implementiran pomocu pointera, a header[i] predstavljalistu djece cvora i.

Zadatak iz SPA 211.

Neka su cvorovi uredenog stabla prikazani sa:

type celltype= recordlabel : labeltype ;first child, next sib : ↑celltype

end ;node = ↑celltype ;TREE = ↑celltype ;

Uz ovakav prikaz implementirajte a.t.p. TREE na osnovu veze ”cvor→ (prvo dijete, iduci brat)”. Pretpostavljamo da je labeltype podataktipa char.

Page 33: Zadatak iz SPA 1.karaga/Zalg98gl.pdf · Zadatak iz SPA 8. Napiˇsite program za zbrajanje i mnoˇzenje dvaju polinoma zapisanih u obliku: p(x) = c1xe1 +::: + cnxen; gdje su e1 > e2

Zadatak iz SPA 212.

Neka su cvorovi uredenog stabla prikazani sa:

type celltype= recordlabel : labeltype ;first child, next sib, last child : ↑celltype ;zadnji : boolean

end ;node = ↑celltype ;TREE = ↑celltype ;

gdje je first child pointer na prvo dijete cvora, next sib pointer na iducegbrata cvora, a last child pointer na zadnjeg djeteta cvora. Podatakzadnji je istina ako je to zadnje dijete cvora. Uz ovakav prikaz imple-mentirajte a.t.p. TREE. Pretpostavljamo da je labeltype podatak tipachar.

Zadatak iz SPA 213.

Napisite potprogram koji ce uredeno stablo prikazati kao binarno sta-blo. Uredeno stablo implementirajte pomocu pointera na osnovu ”cvor→ (prvo dijete, iduci brat)”, a binarno stablo prikazite pomocu point-era. (Cvorovi uredenog stabla su prikazani sa:

type celltype= recordlabel : labeltype ;first child, next sib : ↑celltype

end ;node = ↑celltype ; )

Zadatak iz SPA 214.

Napisite potprogram koji ce uredeno stablo prikazati kao binarno sta-blo. Uredeno stablo implementirajte pomocu polja na osnovu ”cvor →(prvo dijete, iduci brat)”, a binarno stablo prikazite pomocu pointera.

Zadatak iz SPA 215.

Implementirajte a.t.p. TREE pomocu polja na osnovu veze ”cvor →(prvo dijete, iduci brat)” i napisite potprogram za obilazak stabla ponivoima, tj. najprije trebate ispisati cvorove sa 0,1,2, ... itd. nivoa.