Professional Documents
Culture Documents
, 18:30
Stanje Završeno
Završeno ponedjeljak, 1. veljače 2021., 19:11
Proteklo vrijeme 40 min 39 s
Ocjena 97,00 od maksimalno 100,00
Točno
Netočno
Točno
Netočno
Povezane liste uz svaki podatak koriste i dodatnu memorijsku adresu kako bi se znalo gdje je sljedeći podatak.
Točno
Netočno
Ako povezana lista ima pokazivače na prvog i na zadnjeg, onda možemo trenutačno (u vremenu O(1)) obrisati zadnji podatak.
Točno
Netočno
/
Pitanje 5 Točno Broj bodova: 2,00 od 2,00
Svaki rekurzivni problem bi se trebao moći rede nirati pomoću jednog ili više manjih podproblema koji su po prirodi identični, ali manji po veličini.
Točno
Netočno
U slučaju da nemamo osnovni slučaj, rekurzivna funkcija će pozivati samu sebe beskonačno puta.
Točno
Netočno
Točno
Netočno
Točno
Netočno
Desni nasljednik od i-tog čvora u hrpi se nalazi po formuli 2*i+1, ukoliko je to manje od broja elemenata hrpe.
Točno
Netočno
/
Pitanje 10 Točno Broj bodova: 2,00 od 2,00
Točno
Netočno
Zadan je dio programa u C-u koji je napisan prema algoritmu binarnog pretraživanja. Napisani su i brojevi linija. Međutim, u jednoj liniji se nalazi greška. U kojoj?
1. dg = 0;
2. gg = N-1;
3. for (;;) {
4. s = dg+gg/2;
5. if (V[s]==x) {
6. printf( "%d Pronadjen! Na %d. poziciji u nizu.\n", x, s );
7. exit( 0 );
8. }
9. if (x<V[s]) gg = s-1;
10. if (x>V[s]) dg = s+1;
11. if (dg>=gg) {
12. printf( "%d nije pronadjen!\n", x );
13. exit( 1 );
14. }
15. }
Odgovor: 4
Pristup elementu kod povezanih lista ima složenost O( n ). Ovakva složenost se još naziva i linearna složenost.
Ako je zadana rekurzivna funcija koja računa faktorijele: int fakt( int n ), koliko će biti rekurzivnih poziva ako ju pozovemo s fakt( 855 )?
Odgovor: 855
/
Pitanje 14 Točno Broj bodova: 4,00 od 4,00
Stablo kod kojeg sve razine moraju biti popunjene, osim zadnje razine koja mora biti popunjena s lijeva na desno se naziva:
b. Opće stablo
Neka je zadana procedura void UHRPI(int i) koja uhrpljava čvor na i-tom mjestu prema algoritmu koji smo učili na predavanju i procedura zamjeni(..) koja
zamjenjuje mjesta dva elementa u zadanom nizu V od N elemenata. NH je broj elemenata hrpe.
1. void HeapSort() {
2. int i;
3. NH = N;
4. for (i=NH/2; i>=0; i--) UHRPI( i );
5. for (i=NH-1; i>=1; i--) {
6. zamjeni( &V[i], &V[i-1] );
7. NH--;
8. UHRPI( 0 );
9. }}
Međutim ova procedura ima grešku. Napišite u kojoj je liniji greška!
Odgovor: 6
U funkciji HEAP SORT koja sortira podatke koristeći hrpu dodajte dijelove koji nedostaju kako bi ona ispravno radila.
/
Pitanje 17 Točno Broj bodova: 5,00 od 5,00
U funkciji koja sortira povezanu listu dodajte dijelove koji nedostaju kako bi ona ispravno radila.
ppopis *temp1;
temp1 = new ppopis;
ppopis *temp2;
temp2 = new ppopis;
int temp=0;
temp1->broj = temp2->broj;
temp2->broj=temp;
}
}
}
}
U funkciji za obilazak stabla dodajte dijelove koji nedostaju kako bi ona ispravno radila.
else{
Dana je funkcija koja generira slučajni niz sastavljen od nula i jedinica, tako da se ne mogu pojaviti više od 3 uzastopne jedinice. Popunite polja koja nedostaju tako da programski
kod radi ispravno.
int uzast1=0;
a[i] = rand()% 2 ;
if (a[i] == 1) uzast1++;
if (uzast1> 3 ) {
a[i] = 0 ;
uzast1 = 0 ;
/
Pitanje 20 Točno Broj bodova: 10,00 od 10,00
#include <stdio.h>
#include <stdlib.h>
int main() {
oe *p1 = NULL, *p2=NULL, *t1, *t2;
ubaci( &p1, 1 );
ubaci( &p2, 2 );
ubaci( &p1, 3 );
ubaci( &p2, 4 );
ubaci( &p1, 5 );
ubaci( &p2, 6 );
for (t1=p1; t1!=NULL; t1=t1->sljedeci)
printf("%d",t1->x);
return 0;
}
Odgovor: 531
Uredite redoslijed naredbi kako dobili funkciju 'obilazak' koja bi odgovarala postorder (LDN) obilasku stabla.
printf("%d ",cvor->x);
/
Pitanje 22 Točno Broj bodova: 20,00 od 20,00
Napišite funkciju "void ncvorova(struct cvor *root)" koja će izračunati i na ekran ispisati koliko ima ukupno čvorova u stablu.
Struktura cvor sastoji se od cjelobrojnog podatka X i pokazivača na lijevi i desni nasljednik (*lijevi, *desni).
Test Got
test1 11
test2 7
test3 2
test4 0
Točno
/
Započeto ponedjeljak, 1. veljače 2021., 18:30
Stanje Završeno
Završeno ponedjeljak, 1. veljače 2021., 19:13
Proteklo vrijeme 43 min 41 s
Ocjena 80,00 od maksimalno 100,00
Točno
Netočno
Točno
Netočno
Povezana lista se može obići unatrag (od zadnjeg elementa do prvog) u linearnom vremenu O( n ).
Točno
Netočno
/
Pitanje 4 Točno Broj bodova: 2,00 od 2,00
Ako imamo sortiranu povezanu listu onda ju možemo pretraživati algoritmom binarnog pretraživanja.
Točno
Netočno
Točno
Netočno
Točno
Netočno
Točno
Netočno
Točno
Netočno
Algoritam za sortiranje BubbleSort je sporiji od algoritma za sortiranje koji koristi hrpu HeapSort.
Točno
Netočno
Točno
Netočno
/
Pitanje 11 Netočno Broj bodova: 0,00 od 4,00
Zadan je dio programa u C-u koji je napisan prema algoritmu binarnog pretraživanja. Napisani su i brojevi linija.
Međutim, u jednoj liniji se nalazi greška. U kojoj?
1. dg = 0;
2. gg = N+1;
3. for (;;) {
4. s = (dg+gg)/2;
5. if (V[s]==x) {
6. printf( "%d Pronadjen! Na %d. poziciji u nizu.\n", x, s );
7. exit( 0 );
8. }
9. if (x<V[s]) gg = s-1;
10. if (x>V[s]) dg = s+1;
11. if (dg>=gg) {
12. printf( "%d nije pronadjen!\n", x );
13. exit( 1 );
14. }
15. }
Odgovor: 3
Ispravan odgovor je: Ispitivanje je li povezana lista prazna → 1 (najbrže), Brisanje svih elemenata liste → 3 (najsporije),
Dodavanje novog elementa na početak povezane liste → 2 (srednje)
/
Pitanje 13 Točno Broj bodova: 4,00 od 4,00
Kod problema povrh(a,b), ako je a=1240, koliko treba biti b, da bi izvršavanje ove funkcije trajalo najduže?
Odgovor: 620
Stablo kod kojeg sve razine moraju biti popunjene, osim zadnje razine koja mora biti popunjena s lijeva na desno se
naziva:
b. Opće stablo
/
Pitanje 15 Netočno Broj bodova: 0,00 od 4,00
Neka je zadana procedura void UHRPI(int i) koja uhrpljava čvor na i-tom mjestu prema algoritmu koji smo učili
na predavanju i procedura zamjeni(..) koja zamjenjuje mjesta dva elementa u zadanom nizu V od N elemenata.
NH je broj elemenata hrpe.
1. void HeapSort() {
2. int i;
3. NH = N;
4. for (i=NH/2; i>=0; i--) UHRPI( i );
5. for (i=NH-1; i<0; i--) {
6. zamjeni( &V[0], &V[i] );
7. NH--;
8. UHRPI( 0 );
9. }}
Međutim ova procedura ima grešku. Napišite u kojoj je liniji greška!
Odgovor: 4
U funkciji HEAP SORT koja sortira podatke koristeći hrpu dodajte dijelove koji nedostaju kako bi ona ispravno radila.
/
Pitanje 17 Točno Broj bodova: 5,00 od 5,00
U funkciji za obilazak stabla dodajte dijelove koji nedostaju kako bi ona ispravno radila.
else{
inOrder(root-> left );
printf( root->x );
inOrder(root-> right );
U funkciji koja obavlja SELECT-SORT dodajte dijelove koji nedostaju kako bi ona ispravno radila.
int i, j;
V[i] = V[j];
V[j] = temp ;
/
Pitanje 19 Djelomično točno Broj bodova: 4,00 od 5,00
U funkciji koja sortira povezanu listu dodajte dijelove koji nedostaju kako bi ona ispravno radila.
ppopis *temp1;
temp1 = new ppopis;
ppopis *temp2;
temp2 = new ppopis;
int temp=0;
temp1->broj = temp2->broj;
temp2->broj=temp;
}
}
}
}
/
Pitanje 20 Djelomično točno Broj bodova: 5,00 od 10,00
Preuredi redoslijed naredbi funkcije ubaci koja ubacuje novi čvor na početak kraj povezane liste.
novi->x = novix;
novi->sljedeci = NULL;
t2 = *t;
while (t2->sljedeci!=NULL) t2=t2->sljedeci;
t2->sljedeci = novi;
1. 1 / 1 = 100%
2. 0 / 1 = 0%
3. 0 / 1 = 0%
4. 0 / 1 = 0%
5. 1 / 1 = 100%
6. 1 / 1 = 100%
/
Pitanje 21 Točno Broj bodova: 10,00 od 10,00
LDN 12,14,9,19,23,17,67,72,54,76,50
NLD 50,17,9,14,12,23,19,76,54,72,67
LND 9,12,14,17,19,23,50,54,67,72,76
/
Pitanje 22 Točno Broj bodova: 20,00 od 20,00
Napisati rekurzivnu funkciju "int pronadji(struct cvor *root, int n)" koja će pronaći (ako postoji) traženu vrijednost n
u poredanom binarnom stablu. Ako cvor sa trazenom vrijednoscu postoji funkcija treba vratiti vrijednost 1, a ukoliko ne postoji
0. Stablo je predstavljeno strukturom cvor koja sadrzi cjelobrojni podatak X te pokazivače na lijevog nasljednika lijevi i
pokazivača na desnog nasljednika desni;
test2 32 1 1
test3 100 0 0
test4 33 0 0
Točno
/
Započeto ponedjeljak, 1. veljače 2021., 18:30
Stanje Završeno
Završeno ponedjeljak, 1. veljače 2021., 19:15
Proteklo vrijeme 45 min
Ocjena 75,20 od maksimalno 100,00
Točno
Netočno
Točno
Netočno
Točno
Netočno
/
Pitanje 4 Točno Broj bodova: 2,00 od 2,00
Čvor povezane liste mora sadržavati element koji je pokazivač na sljedeći podatak istog tipa kao čvor.
Točno
Netočno
Točno
Netočno
Svaki algoritam koji je dan kao rekurzivna funkcija ili procedura moze se rijestiti iterativno pomocu reda.
Točno
Netočno
Točno
Netočno
/
Pitanje 8 Točno Broj bodova: 2,00 od 2,00
Kod potpunog binarnog stabla, indeks roditeljskog čvora od čvora i se dobiva izrazom i/2.
Točno
Netočno
Točno
Netočno
Točno
Netočno
/
Pitanje 11 Točno Broj bodova: 4,00 od 4,00
Zadan je dio programa u C-u koji je napisan prema algoritmu binarnog pretraživanja. Napisani su i brojevi linija. Međutim, u jednoj liniji se nalazi
greška. U kojoj?
1. dg = 0;
2. gg = N-1;
3. for (;;) {
4. s = (dg+gg)/2;
5. if (V[s]==x) {
6. printf( "%d Pronadjen! Na %d. poziciji u nizu.\n", x, s );
7. exit( 0 );
8. }
9. if (x<V[s]) gg = s-1;
10. if (x<V[s]) dg = s+1;
11. if (dg>=gg) {
12. printf( "%d nije pronadjen!\n", x );
13. exit( 1 );
14. }
15. }
Odgovor: 10
Neka lista ima n podataka i neka ima samo pokazivač na prvi podatak.
/
Pitanje 13 Točno Broj bodova: 4,00 od 4,00
Ako je zadana rekurzivna funcija koja računa faktorijele: int fakt( int n ), koliko će biti rekurzivnih poziva ako ju pozovemo s fakt( 260 )?
Odgovor: 260
LND Inorder
NLD Preorder
LDN Postorder
Ispravan odgovor je: LND → Inorder, NLD → Preorder, LDN → Postorder, DLN → Takav obilazak ne postoji
Neka je zadana procedura void UHRPI(int i) koja uhrpljava čvor na i-tom mjestu prema algoritmu koji smo učili na predavanju i
procedura zamjeni(..) koja zamjenjuje mjesta dva elementa u zadanom nizu V od N elemenata. NH je broj elemenata hrpe.
1. void HeapSort() {
2. int i;
3. NH = N;
4. for (i=NH/2; i>=0; i--) UHRPI( i );
5. for (i=NH-1; i>=1; i--) {
6. zamjeni( &V[0], &V[i] );
7. NH++;
8. UHRPI( 0 );
9. }}
Međutim ova procedura ima grešku. Napišite u kojoj je liniji greška!
Odgovor: 7
/
Pitanje 16 Djelomično točno Broj bodova: 4,00 od 5,00
Dana je funkcija koja generira slučajni niz sastavljen od nula i jedinica, tako da se ne mogu pojaviti više od 3 uzastopne jedinice. Popunite polja koja nedostaju
tako da programski kod radi ispravno.
int uzast1=0;
a[i] = rand()% 1 ;
if (a[i] == 1) uzast1++;
if (uzast1> 3 ) {
a[i] = 0 ;
uzast1 = 0 ;
U rekurzivnoj funkciji MERGE-SORT koja sortira podatke niza dodajte dijelove koji nedostaju kako bi ona ispravno radila.
if (l < r ) {
int s = (l+r) / 2 ;
MergeSort(l, s);
MergeSort (s + 1 , r);
merge( l , r);
/
Pitanje 18 Točno Broj bodova: 5,00 od 5,00
U funkciji koja računa povrh koristeći stog dodajte dijelove koji nedostaju kako bi ona ispravno radila.
int n, m, povrh= 0 ;
Clear(s1); Clear( s2 );
do {
n = Pop(s1);
m = Pop(s2);
if (m == n || n == 1 || m == 0) povrh++;
else {
Push(s1, n - 1);
Push(s2, m - 1);
Push(s1, n - 1);
Push(s2, m );
return povrh;
U funkciji koja računa povrh koristeći rekurziju dodajte dijelove koji nedostaju kako bi ona ispravno radila.
if (m == n || n == 1 || m || 0)
return 1 ;
else
/
Pitanje 20 Točno Broj bodova: 10,00 od 10,00
#include <stdio.h>
#include <stdlib.h>
int main() {
oe *p1 = NULL, *p2=NULL, *t1, *t2;
ubaci( &p1, 1 );
ubaci( &p2, 2 );
ubaci( &p1, 3 );
ubaci( &p2, 4 );
ubaci( &p1, 5 );
ubaci( &p2, 6 );
for (t1=p1, t2=p2; t1!=NULL; t1=t1->sljedeci)
printf("%d%d",t1->x, t2->x);
return 0;
}
Odgovor: 563616
/
Pitanje 21 Točno Broj bodova: 10,00 od 10,00
Dodjelite svakom čvoru njegove nasljednike (ako ih ima) za poredano binarno stablo predstavljeno ulaznim vektorom
[6,1,22,100,65,43,18,4,80,75].
4 -,-
65 43,80
100 65,-
18 -,-
75 -,-
22 18,100
43 -,-
80 75,-
6 1,22
1 -,4
Ispravan odgovor je: 4 → -,-, 65 → 43,80, 100 → 65,-, 18 → -,-, 75 → -,-, 22 → 18,100, 43 → -,-, 80 → 75,-, 6 → 1,22, 1 → -,4
/
Pitanje 22 Netočno Broj bodova: 0,00 od 20,00
Zadana je povezana lista predstavljena strukturom element koja se sastoji od cjelobrojnog podatka X i pokazivača next na sljedeći element povezane liste.
Napisati algoritam koji sažima povezanu listu tako što izbacuje svaki element koji se više puta pojavljuje u listi.
Napisati funkciju "povezanaLista(struct element * glava)" koja na ekran ispisuje izgled nove povezane liste.
NAPOMENA:
** Koristiti C jezik!
** Za ispis povezane liste pozvati već spremnu funkciju ispis(struct element * glava).
Npr.
//vaš kod
ispis(nova_lista);
1
2 void povezanaLista(struct element *glava)
3 {
4 struct element* temp=glava;
5 int listelements=0;
6 while(temp->next!=NULL)
7 {
8 listelements++;
9 temp=temp->next;
10 }
11 temp=glava;
12 int *V=(int*)malloc(sizeof(int)*listelements);
13 for(i=0;i<listelements;i++)
14 {
15 V[i]=0;
16 temp=temp->next;
17 }
18 for(i=0;i<listelements;i++)
19 {
20 if(V[i]==temp->x)
21 V[i]=temp->x;
22 temp=temp->next;
23 }
24 temp=glava->next;
25 struct element* p=glava;
26 for(i=0;i<listelements-1;i++)
27 {
28 if(V[i]==0)
29 {
30 p->next=temp;
31 temp=temp->next;
32 glava=temp;
33 }
34
35 }
36
37
38 }
39
40
/
Syntax Error(s)
Netočno
/
Započeto ponedjeljak, 1. veljače 2021., 18:30
Stanje Završeno
Završeno ponedjeljak, 1. veljače 2021., 19:12
Proteklo vrijeme 41 min 25 s
Ocjena 78,20 od maksimalno 100,00
Točno
Netočno
Točno
Netočno
Točno
Netočno
/
Pitanje 4 Točno Broj bodova: 2,00 od 2,00
Ako imamo sortiranu povezanu listu onda ju možemo pretraživati algoritmom binarnog pretraživanja.
Točno
Netočno
Točno
Netočno
Iterativno rješenje uvijek ima veći programski kod u odnosu na rekruzivno rješenje.
Točno
Netočno
/
Pitanje 7 Točno Broj bodova: 2,00 od 2,00
Točno
Netočno
Točno
Netočno
Točno
Netočno
/
Pitanje 10 Točno Broj bodova: 2,00 od 2,00
Algoritam za sortiranje BubbleSort je sporiji od algoritma za sortiranje koji koristi hrpu HeapSort.
Točno
Netočno
Zadan je dio programa u C-u koji je napisan prema algoritmu binarnog pretraživanja. Napisani su i brojevi linija.
Međutim, u jednoj liniji se nalazi greška. U kojoj?
1. dg = 0;
2. gg = N-1;
3. for (;;) {
4. s = (dg+gg)/2;
5. if (s==x) {
6. printf( "%d Pronadjen! Na %d. poziciji u nizu.\n", x, s );
7. exit( 0 );
8. }
9. if (x<V[s]) gg = s-1;
10. if (x>V[s]) dg = s+1;
11. if (dg>=gg) {
12. printf( "%d nije pronadjen!\n", x );
13. exit( 1 );
14. }
15. }
Odgovor: 5
/
Pitanje 12 Djelomično točno Broj bodova: 3,20 od 4,00
Neka lista ima n podataka i neka ima samo pokazivač na prvi podatak.
Kod problema povrh(a,b), ako je a=877, koliko treba biti b, da bi izvršavanje ove funkcije trajalo najduže?
Odgovor: 877/2
/
Pitanje 14 Netočno Broj bodova: 0,00 od 4,00
Binarno stablo
Opće stablo
Hrpa
Ispravni odgovori su: Poredano binarno stablo, Opće stablo, Binarno stablo
/
Pitanje 15 Točno Broj bodova: 4,00 od 4,00
Neka je zadana procedura void UHRPI(int i) koja uhrpljava čvor na i-tom mjestu prema algoritmu koji smo učili
na predavanju i procedura zamjeni(..) koja zamjenjuje mjesta dva elementa u zadanom nizu V od N elemenata.
NH je broj elemenata hrpe.
1. void HeapSort() {
2. int i;
3. NH = N;
4. for (i=NH/2; i>=0; i--) UHRPI( i );
5. for (i=NH-1; i>=1; i--) {
6. zamjeni( &V[0], &V[i] );
7. NH++;
8. UHRPI( 0 );
9. }}
Međutim ova procedura ima grešku. Napišite u kojoj je liniji greška!
Odgovor: 7
U funkciji koja obavlja SEKVENCIJALNO PRETRAŽIVANJE dodajte dijelove koji nedostaju kako bi ona ispravno radila.
int i;
if (V[ i ] == x)
return i;
return -1;
/
Pitanje 17 Djelomično točno Broj bodova: 4,00 od 5,00
U funkciji koja dodaje element u povezanu listu dodajte dijelove koji nedostaju kako bi ona ispravno radila.
struct ppopis{
int broj;
ppopis * next;
};
temp1 = glava ;
ppopis *old_temp;
while(temp1->next!=NULL){
old_temp = temp1;
free( old_temp );
/
Pitanje 18 Djelomično točno Broj bodova: 4,00 od 5,00
int sp;
int capacity;
int* array;
} Stack;
printf("Error.Stack overflow.\n");
break; {
s->sp += 1 ;
s->array[s->sp] = x ;
U funkciji za obilazak stabla (ne rekurzivna - koristeći stogove) dodajte dijelove koji nedostaju kako bi ona ispravno radila.
cvor * p = glava;
push(p);
while(!emp()){
p_temp = Pop() ;
if(p_temp-> desni ){
push(p_temp-> desni );
if(p_temp-> lijevi ){
push(p_temp-> lijevi );
/
Pitanje 20 Točno Broj bodova: 10,00 od 10,00
#include <stdio.h>
#include <stdlib.h>
int main() {
oe *p1 = NULL, *p2=NULL, *t1, *t2;
ubaci( &p1, 1 );
ubaci( &p2, 2 );
ubaci( &p1, 3 );
ubaci( &p2, 4 );
ubaci( &p1, 5 );
ubaci( &p2, 6 );
for (t1=p1, t2=p2; t1!=NULL; t1=t1->sljedeci)
printf("%d%d",t1->x, t2->x);
return 0;
}
Odgovor: 563616
/
Pitanje 21 Točno Broj bodova: 10,00 od 10,00
Uredite redoslijed naredbi kako dobili funkciju 'obilazak' koja bi odgovarala preorder (NLD) obilasku stabla.
printf("%d ",cvor->x);
/
Pitanje 22 Netočno Broj bodova: 15,00 od 20,00
Dovršiti funkciju binarno (ako je broj pronađen vratiti index na kojem se nalazi. U slučaju da nije pronađen funkcija će vratiti -1).
#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
#include <string.h>
#include <stdbool.h>
#include <math.h>
if(x==arr[sr])
{
return sr;
break;
}
if(x<arr[sr])
{
gg=sr-1;
}
if(x>arr[sr])
{
dg=sr+1;
}
else
{
return -1;
/
Syntax Error(s)
Netočno
Bodovi za ovaj pokuštaj: 0,00/20,00. Zbog prethodnih pokušaja, broj bodova je: 15,00/20,00.
/
Započeto ponedjeljak, 1. veljače 2021., 18:30
Stanje Završeno
Završeno ponedjeljak, 1. veljače 2021., 19:14
Proteklo vrijeme 44 min 11 s
Ocjena 68,67 od maksimalno 100,00
Točno
Netočno
Točno
Netočno
Ako imamo dvostruko povezanu listu onda možemo pristupiti svakom podatku trenutačno O(1).
Točno
Netočno
/
Pitanje 4 Točno Broj bodova: 2,00 od 2,00
Povezane liste uz svaki podatak imaju vrijednost adrese na sljedeći jednaku NULL.
Točno
Netočno
Točno
Netočno
Točno
Netočno
Točno
Netočno
/
Pitanje 8 Točno Broj bodova: 2,00 od 2,00
Kod prikaza binarnog stabla u matrici s tri stupca korijenski čvor mora biti u prvom retku.
Točno
Netočno
Točno
Netočno
Točno
Netočno
/
Pitanje 11 Točno Broj bodova: 4,00 od 4,00
Zadan je dio programa u C-u koji je napisan prema algoritmu binarnog pretraživanja. Napisani su i brojevi linija. Međutim, u jednoj
liniji se nalazi greška. U kojoj?
1. dg = 0;
2. gg = N-1;
3. for (;;) {
4. s = (dg+gg)/2;
5. if (V[s]==x) {
6. printf( "%d Pronadjen! Na %d. poziciji u nizu.\n", x, s );
7. exit( 0 );
8. }
9. if (x<V[s]) gg = s+1;
10. if (x>V[s]) dg = s+1;
11. if (dg>=gg) {
12. printf( "%d nije pronadjen!\n", x );
13. exit( 1 );
14. }
15. }
Odgovor: 9
Svaki element zauzima više mjesta u memoriji nego element kod nizova (polja).
Ispravni odgovori su: To je dinamička struktura podataka (koristi dinamičko zauzimanje i oslobađanje memorije), Svaki element zauzima više
mjesta u memoriji nego element kod nizova (polja).
/
Pitanje 13 Točno Broj bodova: 4,00 od 4,00
Ako je zadana rekurzivna funcija koja računa faktorijele: int fakt( int n ), koliko će biti rekurzivnih poziva ako ju pozovemo s
fakt( 346 )?
Odgovor: 346
Binarno stablo
Hrpa
Opće stablo
/
Pitanje 15 Točno Broj bodova: 4,00 od 4,00
Neka je zadana procedura void UHRPI(int i) koja uhrpljava čvor na i-tom mjestu prema algoritmu koji smo učili na predavanju i
procedura zamjeni(..) koja zamjenjuje mjesta dva elementa u zadanom nizu V od N elemenata. NH je broj elemenata hrpe.
1. void HeapSort() {
2. int i;
3. NH = N;
4. for (i=NH/2, i>=0, i--) UHRPI( i );
5. for (i=NH-1, i>=1, i--) {
6. zamjeni( &V[0], &V[i] );
7. NH--;
8. UHRPI( 0 );
9. }}
Međutim ova procedura ima grešku. Napišite u kojoj je liniji greška!
Odgovor: 4
U rekurzivnoj funkciji MERGE-SORT koja sortira podatke niza dodajte dijelove koji nedostaju kako bi ona ispravno radila.
if (l < r ) {
int s = (l+r) / 2 ;
MergeSort(l, s);
MergeSort (s + 1 , r);
merge( l , r);
/
Pitanje 17 Djelomično točno Broj bodova: 4,00 od 5,00
U funkciji koja sortira povezanu listu dodajte dijelove koji nedostaju kako bi ona ispravno radila.
ppopis *temp1;
temp1 = new ppopis;
ppopis *temp2;
temp2 = new ppopis;
int temp=0;
temp1->broj = temp2->broj;
temp2->broj=temp;
}
}
}
}
U funkciji HEAP SORT koja sortira podatke koristeći hrpu dodajte dijelove koji nedostaju kako bi ona ispravno radila.
/
Pitanje 19 Djelomično točno Broj bodova: 4,00 od 5,00
U funkciji koja računa povrh koristeći stog dodajte dijelove koji nedostaju kako bi ona ispravno radila.
int n, m, povrh= 0 ;
Clear(s1); Clear( s2 );
do {
n = Pop(s1);
m = Pop(s2);
if (m == n || n == 1 || m == 0) povrh++;
else {
Push(s1, n - 1);
Push(s2, m - 1);
Push(s1, n - 1);
Push(s2, m-1 );
return povrh;
/
Pitanje 20 Točno Broj bodova: 10,00 od 10,00
#include <stdio.h>
#include <stdlib.h>
struct oe_ { int x; struct oe_ *sljedeci; };
typedef struct oe_ oe;
int main() {
oe *prvi = NULL, *t;
ubaci( &prvi, 7 );
ubaci( &prvi, 0 );
ubaci( &prvi, 5 );
for (t=prvi; t!=NULL; t=t->sljedeci)
printf("%d",t->x);
return 0;
}
Odgovor: 507
/
Pitanje 21 Točno Broj bodova: 10,00 od 10,00
LND 35,44,20,42,18,43,55,16,85,90
NLD 85,44,35,43,18,20,42,55,16,90
LDN 35,42,20,18,16,55,43,44,90,85
/
Pitanje 22 Netočno Broj bodova: 0,00 od 20,00
Napisati funkciju "void obrisiNeparne( oe *prvi )" koja briše sve elemente cjelobrojne povezane liste koji su neparni.
Osnovni element liste oe se sastoji od cjelobrojnog podatka 'x', te pokazivača na isti takav osnovni element 'sljedeci'.
/
Test Input Expected Got
Show di erences
Netočno
/
Započeto ponedjeljak, 1. veljače 2021., 18:30
Stanje Završeno
Završeno ponedjeljak, 1. veljače 2021., 18:59
Proteklo vrijeme 29 min 35 s
Ocjena 89,00 od maksimalno 100,00
Točno
Netočno
Točno
Netočno
Čvor povezane liste mora sadržavati podatkovni element tipa int x; u C-u.
Točno
Netočno
Točno
Netočno
Iterativno rješenje uvijek ima veći programski kod u odnosu na rekruzivno rješenje.
Točno
Netočno
Točno
Netočno
Točno
Netočno
Točno
Netočno
Točno
Netočno
Novi čvor se uvijek dodaje kao zadnji element u hrpu i tamo ostaje.
Točno
Netočno
Zadan je dio programa u C-u koji je napisan prema algoritmu binarnog pretraživanja. Napisani
su i brojevi linija. Međutim, u jednoj liniji se nalazi greška. U kojoj?
1. dg = 0;
2. gg = N-1;
3. for (;;) {
4. s = dg+gg/2;
5. if (V[s]==x) {
6. printf( "%d Pronadjen! Na %d. poziciji u nizu.\n", x, s );
7. exit( 0 );
8. }
9. if (x<V[s]) gg = s-1;
10. if (x>V[s]) dg = s+1;
11. if (dg>=gg) {
12. printf( "%d nije pronadjen!\n", x );
13. exit( 1 );
14. }
15. }
Odgovor: 4
Kada je povezana lista prazna, onda prvi ima vrijednost NULL . Memorijska adresa kod 64-
Ako je zadana rekurzivna funcija koja računa faktorijele: int fakt( int n ), koliko će biti
rekurzivnih poziva ako ju pozovemo s fakt( 199 )?
Odgovor: 199
LDN Postorder
NLD Preorder
LND Inorder
Ispravan odgovor je: DLN Takav obilazak ne postoji, LDN Postorder, NLD Preorder, LND
Inorder
:
Pitanje 15 Točno Broj bodova: 4,00 od 4,00
Neka je zadana procedura void UHRPI(int i) koja uhrpljava čvor na i-tom mjestu prema
algoritmu koji smo učili na predavanju i procedura zamjeni(..) koja zamjenjuje mjesta dva
elementa u zadanom nizu V od N elemenata. NH je broj elemenata hrpe.
1. void HeapSort() {
2. int i;
3. NH = N;
4. for (i=NH/2; i>=0; i--) UHRPI( i );
5. for (i=NH-1; i>=1; i--) {
6. zamjeni( &V[0], &V[i] );
7. NH--;
8. UHRPI( i );
9. }}
Međutim ova procedura ima grešku. Napišite u kojoj je liniji greška!
Odgovor: 8
U rekurzivnoj funkciji MERGE-SORT koja sortira podatke niza dodajte dijelove koji nedostaju kako bi
ona ispravno radila.
if (l < r ) {
int s = (l+r) / 2 ;
MergeSort(l, s);
MergeSort (s + 1 , r);
merge( l , r);
}
:
Pitanje 17 Djelomično točno Broj bodova: 4,00 od 5,00
U funkciji koja sortira povezanu listu dodajte dijelove koji nedostaju kako bi ona ispravno radila.
ppopis *temp1;
temp1 = new ppopis;
ppopis *temp2;
temp2 = new ppopis;
int temp=0;
temp1->broj = temp2->broj;
temp2->broj=temp;
}
}
}
}
:
Pitanje 18 Djelomično točno Broj bodova: 2,00 od 5,00
U funkciji za obilazak stabla dodajte dijelove koji nedostaju kako bi ona ispravno radila.
else{
inOrder(root-> lijevi );
printf( root->x );
inOrder(root-> desni );
U funkciji koja obavlja SEKVENCIJALNO PRETRAŽIVANJE dodajte dijelove koji nedostaju kako bi ona
ispravno radila.
int i;
if (V[ i ] == x)
return i;
return -1;
}
:
Pitanje 20 Točno Broj bodova: 10,00 od 10,00
Preuredi redoslijed naredbi funkcije ubaci koja ubacuje novi čvor na početak kraj povezane
liste.
novi->x = novix;
novi->sljedeci = NULL;
t2 = *t;
while (t2->sljedeci!=NULL) t2=t2->sljedeci;
t2->sljedeci = novi;
Dodjelite svakom čvoru njegove nasljednike (ako ih ima) za poredano binarno stablo
predstavljeno ulaznim vektorom [6,1,22,100,65,43,18,4,80,75].
65 43,80
22 18,100
100 65,-
43 -,-
6 1,22
18 -,-
1 -,4
75 -,-
80 75,-
4 -,-
Ispravan odgovor je: 65 43,80, 22 18,100, 100 65,-, 43 -,-, 6 1,22, 18 -,-, 1 -,4, 75
-,-, 80 75,-, 4 -,-
Napiši rekurzivnu funkciju "int obrniznam(int n)" koja će obrnuti zanemnke cijelog broja n. Npr.
For example:
:
Test Input Result
int znam;
int dec = 1;
int check = x;
if(x<1){return 0;}
while(check >10){
check /=10;
dec*=10;
}
znam = x%10;
return (znam*dec)+obrniznam(x/10);
test1 5 5 5
Show di!erences
Djelomično točno
Točno
Netočno
Točno
Netočno
/
Pitanje 3 Točno Broj bodova: 2,00 od 2,00
Točno
Netočno
Čvor povezane liste mora sadržavati element koji je pokazivač na sljedeći podatak istog tipa kao čvor.
Točno
Netočno
Točno
Netočno
/
Pitanje 6 Točno Broj bodova: 2,00 od 2,00
Rekurzivna funkcija ili procedura može imati samo jedan osnovni slučaj kada se ne poziva rekurzivno.
Točno
Netočno
Točno
Netočno
Točno
Netočno
/
Pitanje 9 Točno Broj bodova: 2,00 od 2,00
Točno
Netočno
Točno
Netočno
/
Pitanje 11 Točno Broj bodova: 4,00 od 4,00
Zadan je dio programa u C-u koji je napisan prema algoritmu binarnog pretraživanja. Napisani su i brojevi
linija. Međutim, u jednoj liniji se nalazi greška. U kojoj?
1. dg = 0;
2. gg = N-1;
3. for (;;) {
4. s = (dg+gg)/2;
5. if (V[s]==x) {
6. printf( "%d Pronadjen! Na %d. poziciji u nizu.\n", x, s );
7. exit( 0 );
8. }
9. if (x<V[s]) gg = s-1;
10. if (x<V[s]) dg = s+1;
11. if (dg>=gg) {
12. printf( "%d nije pronadjen!\n", x );
13. exit( 1 );
14. }
15. }
Odgovor: 10
/
Pitanje 12 Točno Broj bodova: 4,00 od 4,00
b. O( n )
c. O(log n)
d. O( n log n )
e. O( 1 )
Kod problema povrh(a,b), ako je a=1688, koliko treba biti b, da bi izvršavanje ove funkcije trajalo najduže?
Odgovor: 844
/
Pitanje 14 Netočno Broj bodova: 0,00 od 4,00
Opće stablo
Hrpa
Ispravni odgovori su: Poredano binarno stablo, Opće stablo, Binarno stablo
/
Pitanje 15 Točno Broj bodova: 4,00 od 4,00
Neka je zadana procedura void UHRPI(int i) koja uhrpljava čvor na i-tom mjestu prema algoritmu koji
smo učili na predavanju i procedura zamjeni(..) koja zamjenjuje mjesta dva elementa u zadanom nizu V
od N elemenata. NH je broj elemenata hrpe.
1. void HeapSort() {
2. int i;
3. NH = N;
4. for (i=NH/2; i>=0; i--) UHRPI( i );
5. for (i=NH-1; i>=1; i--) {
6. zamjeni( &V[0], &V[i] );
7. NH--;
8. UHRPI( i );
9. }}
Međutim ova procedura ima grešku. Napišite u kojoj je liniji greška!
Odgovor: 8
/
Pitanje 16 Točno Broj bodova: 5,00 od 5,00
U funkciji koja računa povrh koristeći stog dodajte dijelove koji nedostaju kako bi ona ispravno radila.
int n, m, povrh= 0 ;
Clear(s1); Clear( s2 );
do {
n = Pop(s1);
m = Pop(s2);
if (m == n || n == 1 || m == 0) povrh++;
else {
Push(s1, n - 1);
Push(s2, m - 1);
Push(s1, n - 1);
Push(s2, m );
return povrh;
/
Pitanje 17 Točno Broj bodova: 5,00 od 5,00
U funkciji za obilazak stabla dodajte dijelove koji nedostaju kako bi ona ispravno radila.
else{
printf( root->x );
U funkciji koja obavlja SEKVENCIJALNO PRETRAŽIVANJE dodajte dijelove koji nedostaju kako bi ona ispravno radila.
int i;
if (V[ i ] == x)
return i;
return -1;
/
Pitanje 19 Djelomično točno Broj bodova: 2,00 od 5,00
U funkciji koja stvara povezanu listu dodajte dijelove koji nedostaju kako bi ona ispravno radila.
struct cvor{
int x;
};
struct cvor * p;
for(int i=0;i<n;i++){
if(i==0){
glava->next=NULL;
p ->x=polje[i];
p=glava;
}else{
tmp=p;
p = p->next;
p->next= tmp ;
p->x=polje[i];
return glava;
/
Pitanje 20 Točno Broj bodova: 10,00 od 10,00
Preuredi redoslijed naredbi funkcije ubaci koja ubacuje novi čvor na početak povezane liste.
novi->x = novix;
novi->sljedeci = *t;
*t = novi;
Uredite redoslijed naredbi kako dobili funkciju 'obilazak' koja bi odgovarala inorder (LND) obilasku stabla.
printf("%d ",cvor->x);
/
Pitanje 22 Netočno Broj bodova: 0,00 od 20,00
Napiši rekurzivnu funkciju "void trokut(int n)" koja će za zadani n=5, ispisati sljedeći uzorak:
*****
****
***
**
For example:
test1 5 *****
****
***
**
*
1 void trokut(int n)
2 {
3 int i,j;
4 for(i=1;i<=n;i++)
5 {
6 for(j=1;j<i;j++)
7 {
8 printf("");
9 }
10 for(j=i;j<=n;j++)
11 {
12 printf("*");
13 }
14 printf("\n");
15 }
16 }
Syntax Error(s)
/
__tester__.c: In function ‘trokut’:
__tester__.c:16:16: error: zero-length gnu_printf format string [-Werror=format-zero-length]
printf("");
^~
cc1: all warnings being treated as errors
Netočno
/
Započeto ponedjeljak, 1. veljače 2021., 18:30
Stanje Završeno
Završeno ponedjeljak, 1. veljače 2021., 19:12
Proteklo vrijeme 41 min 21 s
Ocjena 80,00 od maksimalno 100,00
Točno
Netočno
Točno
Netočno
Točno
Netočno
/
Pitanje 4 Točno Broj bodova: 2,00 od 2,00
Povezane liste uz svaki podatak koriste i dodatnu memorijsku adresu kako bi se znalo gdje je sljedeći podatak.
Točno
Netočno
Točno
Netočno
Iterativno rješenje uvijek ima veći programski kod u odnosu na rekruzivno rješenje.
Točno
Netočno
Točno
Netočno
/
Pitanje 8 Točno Broj bodova: 2,00 od 2,00
Točno
Netočno
Posljednja razina u hrpi ne mora biti popunjena, ali mora biti popunjavana s lijeva na desno.
Točno
Netočno
Točno
Netočno
/
Pitanje 11 Točno Broj bodova: 4,00 od 4,00
Zadan je dio programa u C-u koji je napisan prema algoritmu binarnog pretraživanja. Napisani su i brojevi linija. Međutim, u
jednoj liniji se nalazi greška. U kojoj?
1. dg = 0;
2. gg = N-1;
3. for (;;) {
4. s = (dg+gg)/2;
5. if (V[s]==x) {
6. printf( "%d Pronadjen! Na %d. poziciji u nizu.\n", x, s );
7. exit( 0 );
8. }
9. if (x<V[s]) gg = s-1;
10. if (x>V[s]) dg = s+1;
11. if (dg<gg) {
12. printf( "%d nije pronadjen!\n", x );
13. exit( 1 );
14. }
15. }
Odgovor: 11
Neka lista ima n podataka i neka ima samo pokazivač na prvi podatak.
Ispravan odgovor je: Dodavanje novog podatka na početak povezane liste. → O( 1 ), Dodavanje novog podatka u sredinu povezane
liste. → O( n ), Obilazak povezane liste. → O( n ), Brisanje prvog podatka u povezanoj listi. → O( 1 ), Pristup prvom elementu. → O( 1 )
/
Pitanje 13 Točno Broj bodova: 4,00 od 4,00
Kod problema povrh(a,b), ako je a=547, koliko treba biti b, da bi izvršavanje ove funkcije trajalo najduže?
Odgovor: 274
Pomoću dinamičke strukture koja sadrži vrijednost čvora i pokazivač na sljedeće čvor
Pomoću 3 matrice
Pomoću dinamičke strukture koja koristi vrijednost čvora, i pokazivače ne lijevi i desni nasljednik
/
Pitanje 15 Netočno Broj bodova: 0,00 od 4,00
Neka je zadana procedura void UHRPI(int i) koja uhrpljava čvor na i-tom mjestu prema algoritmu koji smo učili na
predavanju i procedura zamjeni(..) koja zamjenjuje mjesta dva elementa u zadanom nizu V od N elemenata. NH je broj
elemenata hrpe.
1. void HeapSort() {
2. int i;
3. NH = N;
4. for (i=NH/2; i>=0; i--) UHRPI( 0 );
5. for (i=NH-1; i>=1; i--) {
6. zamjeni( &V[0], &V[i] );
7. NH--;
8. UHRPI( 0 );
9. }}
Međutim ova procedura ima grešku. Napišite u kojoj je liniji greška!
Odgovor: 6
/
Pitanje 16 Djelomično točno Broj bodova: 4,00 od 5,00
U funkciji koja računa povrh koristeći stog dodajte dijelove koji nedostaju kako bi ona ispravno radila.
int n, m, povrh= 0 ;
Clear(s1); Clear( s2 );
do {
n = Pop(s1);
m = Pop(s2);
if (m == n || n == 1 || m == 0) povrh++;
else {
Push(s1, n - 1);
Push(s2, m - 1);
Push(s1, n - 1);
Push(s2, m-1 );
return povrh;
U funkciji koja obavlja SEKVENCIJALNO PRETRAŽIVANJE dodajte dijelove koji nedostaju kako bi ona ispravno radila.
int i;
if (V[ i ] == x)
return i;
return -1;
/
Pitanje 18 Djelomično točno Broj bodova: 1,00 od 5,00
U funkciji koja briše duplikate (pretpostavljamo da je lista sortirana) iz povezane liste dodajte dijelove koji nedostaju kako bi ona ispravno
radila.
struct element{
int X;
element * next;
};
element *p = glava;
while (p->next) {
if (p->X == p->next->x ) {
tmp = p->next ;
free( tmp );
return ;
}else {
return ;
U rekurzivnoj funkciji MERGE-SORT koja sortira podatke niza dodajte dijelove koji nedostaju kako bi ona ispravno radila.
if (l < r ) {
int s = (l+r) / 2 ;
MergeSort(l, s);
MergeSort (s + 1 , r);
merge( l , r);
/
Pitanje 20 Točno Broj bodova: 10,00 od 10,00
#include <stdio.h>
#include <stdlib.h>
int main() {
oe *p1 = NULL, *p2=NULL, *t1, *t2;
ubaci( &p1, 1 );
ubaci( &p2, 2 );
ubaci( &p1, 3 );
ubaci( &p2, 4 );
ubaci( &p1, 5 );
ubaci( &p2, 6 );
for (t1=p1; t1!=NULL; t1=t1->sljedeci)
printf("%d",t1->x);
return 0;
}
Odgovor: 531
/
Pitanje 21 Točno Broj bodova: 10,00 od 10,00
LDN 35,42,20,18,16,55,43,44,90,85
LND 35,44,20,42,18,43,55,16,85,90
NLD 85,44,35,43,18,20,42,55,16,90
/
Pitanje 22 Točno Broj bodova: 15,00 od 20,00
Napiši rekurzivnu funkciju "int obrniznam(int n)" koja će obrnuti zanemnke cijelog broja n. Npr. ako je n=531, funkcija treba vratiti
135.
For example:
1 int obrniznam(int n)
2 {
3 int obrni=0;
4 while(n>0)
5 {
6 obrni = obrni*10 + n%10;
7 n=n/10;
8 }
9 return obrni;
10 }
test1 5 5 5
Točno
Bodovi za ovaj pokuštaj: 20,00/20,00. Zbog prethodnih pokušaja, broj bodova je: 15,00/20,00.
/
Započeto ponedjeljak, 1. veljače 2021., 18:31
Stanje Završeno
Završeno ponedjeljak, 1. veljače 2021., 19:08
Proteklo vrijeme 37 min 42 s
Ocjena 91,00 od maksimalno 100,00
Točno
Netočno
n
Kvadratna vremenska složenost se iskazuje u O-notaciji s O( 2 )
Točno
Netočno
Točno
Netočno
Točno
Netočno
/
Pitanje 5 Točno Broj bodova: 2,00 od 2,00
Točno
Netočno
Rekurzivne funkcije ili procedure mogu pozivati samu sebe samo jednom.
Točno
Netočno
Točno
Netočno
Točno
Netočno
Algoritam za sortiranje BubbleSort je sporiji od algoritma za sortiranje koji koristi hrpu HeapSort.
Točno
Netočno
/
Pitanje 10 Točno Broj bodova: 2,00 od 2,00
Točno
Netočno
Zadan je dio programa u C-u koji je napisan prema algoritmu binarnog pretraživanja. Napisani su i brojevi linija. Međutim, u jednoj liniji se nalazi greška. U kojoj?
1. dg = 0;
2. gg = N+1;
3. for (;;) {
4. s = (dg+gg)/2;
5. if (V[s]==x) {
6. printf( "%d Pronadjen! Na %d. poziciji u nizu.\n", x, s );
7. exit( 0 );
8. }
9. if (x<V[s]) gg = s-1;
10. if (x>V[s]) dg = s+1;
11. if (dg>=gg) {
12. printf( "%d nije pronadjen!\n", x );
13. exit( 1 );
14. }
15. }
Odgovor: 2
Pristup elementu kod povezanih lista ima složenost O( n ). Ovakva složenost se još naziva i linearna složenost.
Kod problema povrh(a,b), ako je a=1495, koliko treba biti b, da bi izvršavanje ove funkcije trajalo najduže?
Odgovor: 747
/
Pitanje 14 Točno Broj bodova: 4,00 od 4,00
Binarno stablo
Hrpa
Ispravni odgovori su: Poredano binarno stablo, Opće stablo, Binarno stablo
Neka je zadana procedura void UHRPI(int i) koja uhrpljava čvor na i-tom mjestu prema algoritmu koji smo učili na predavanju i procedura zamjeni(..) koja
zamjenjuje mjesta dva elementa u zadanom nizu V od N elemenata. NH je broj elemenata hrpe.
1. void HeapSort() {
2. int i;
3. NH = N;
4. for (i=NH/2; i>=0; i--) UHRPI( 0 );
5. for (i=NH-1; i>=1; i--) {
6. zamjeni( &V[0], &V[i] );
7. NH--;
8. UHRPI( 0 );
9. }}
Međutim ova procedura ima grešku. Napišite u kojoj je liniji greška!
Odgovor: 4
/
Pitanje 16 Djelomično točno Broj bodova: 3,00 od 5,00
U funkciji koja obavlja SELECT-SORT dodajte dijelove koji nedostaju kako bi ona ispravno radila.
int i, j;
V[i] = V[j];
V[j] = temp ;
Dana je funkcija koja generira slučajni niz sastavljen od nula i jedinica, tako da se ne mogu pojaviti više od 3 uzastopne jedinice. Popunite polja koja nedostaju tako da programski kod
radi ispravno.
int uzast1=0;
a[i] = rand()% 2 ;
if (a[i] == 1) uzast1++;
if (uzast1> 3 ) {
a[i] = 0 ;
uzast1 = 0 ;
U funkciji koja obavlja SEKVENCIJALNO PRETRAŽIVANJE dodajte dijelove koji nedostaju kako bi ona ispravno radila.
int i;
if (V[ i ] == x)
return i;
return -1;
/
Pitanje 19 Djelomično točno Broj bodova: 3,00 od 5,00
U funkciji za obilazak stabla dodajte dijelove koji nedostaju kako bi ona ispravno radila.
else{
printf( root->x );
Preuredi redoslijed naredbi funkcije ubaci koja ubacuje novi čvor na početak kraj povezane liste.
novi->x = novix;
novi->sljedeci = NULL;
t2 = *t;
while (t2->sljedeci!=NULL) t2=t2->sljedeci;
t2->sljedeci = novi;
/
Pitanje 21 Točno Broj bodova: 10,00 od 10,00
LND 9,12,14,17,19,23,50,54,67,72,76
LDN 12,14,9,19,23,17,67,72,54,76,50
NLD 50,17,9,14,12,23,19,76,54,72,67
/
Pitanje 22 Djelomično točno Broj bodova: 15,00 od 20,00
Napišite funkciju "void nlijevih(struct cvor *root)" koja će izračunati i na ekran ispisati koliko ima čvorova u lijevom podstablu od korijenskog čvora root.
Struktura cvor sastoji se od cjelobrojnog podatka X i pokazivača na lijevi i desni nasljednik (*lijevi, *desni).
1 int count = 0;
2 void cvorova(struct cvor *root) {
3 if(root == NULL) {
4 return;
5 }
6 cvorova(root->desni);
7 count++;
8 cvorova(root->lijevi);
9 }
10
11 void nlijevih(struct cvor *root){
12 if(root==NULL || root->desni==NULL) {
13 printf("0");
14 }
15 cvorova(root->lijevi);
16 printf("%d\n", count);
17 }
Test Got
test1 9
test2 1
test3 0
test4 ***Error***
Segmentation fault
Djelomično točno
/
Započeto ponedjeljak, 1. veljače 2021., 18:30
Stanje Završeno
Završeno ponedjeljak, 1. veljače 2021., 19:15
Proteklo vrijeme 45 min 1 sek
Ocjena 76,00 od maksimalno 100,00
Točno
Netočno
Točno
Netočno
Čvor povezane liste ne možemo koristiti u C-u bez korištenja ključne riječi i naredbe typedef.
Točno
Netočno
/
Pitanje 4 Točno Broj bodova: 2,00 od 2,00
Povezane liste uz svaki podatak koriste i dodatnu memorijsku adresu kako bi se znalo gdje je sljedeći podatak.
Točno
Netočno
Točno
Netočno
b
Složenost rekurzivne funkcije povrh( a, b ) jeste O( a ).
Točno
Netočno
/
Pitanje 7 Točno Broj bodova: 2,00 od 2,00
Točno
Netočno
Točno
Netočno
Točno
Netočno
/
Pitanje 10 Točno Broj bodova: 2,00 od 2,00
Točno
Netočno
Zadan je dio programa u C-u koji je napisan prema algoritmu binarnog pretraživanja. Napisani su i brojevi linija.
Međutim, u jednoj liniji se nalazi greška. U kojoj?
1. dg = 0;
2. gg = N-1;
3. for (;;) {
4. s = (dg+gg)/2;
5. if (V[s]==x) {
6. printf( "%d Pronadjen! Na %d. poziciji u nizu.\n", x, s );
7. exit( 0 );
8. }
9. if (x<V[s]) gg = s-1;
10. if (x<V[s]) dg = s+1;
11. if (dg>=gg) {
12. printf( "%d nije pronadjen!\n", x );
13. exit( 1 );
14. }
15. }
Odgovor: 10
/
Pitanje 12 Netočno Broj bodova: 0,00 od 4,00
d. Kolonu kamiona
Kod problema povrh(a,b), ako je a=781, koliko treba biti b, da bi izvršavanje ove funkcije trajalo najduže?
Odgovor: 390
/
Pitanje 14 Točno Broj bodova: 4,00 od 4,00
Pomoću 3 matrice
Pomoću dinamičke strukture koja sadrži vrijednost čvora i pokazivač na sljedeće čvor
Pomoću dinamičke strukture koja koristi vrijednost čvora, i pokazivače ne lijevi i desni nasljednik
Ispravni odgovori su: Pomoću matrice s tri stupca, Pomoću dinamičke strukture koja koristi vrijednost čvora, i pokazivače
ne lijevi i desni nasljednik
Neka je zadana procedura void UHRPI(int i) koja uhrpljava čvor na i-tom mjestu prema algoritmu koji smo učili na
predavanju i procedura zamjeni(..) koja zamjenjuje mjesta dva elementa u zadanom nizu V od N elemenata. NH
je broj elemenata hrpe.
1. void HeapSort() {
2. int i;
3. NH = N;
4. for (i=NH/2; i>=0; i--) UHRPI( i );
5. for (i=NH-1; i>=1; i--) {
6. zamjeni( &V[i], &V[i-1] );
7. NH--;
8. UHRPI( 0 );
9. }}
Međutim ova procedura ima grešku. Napišite u kojoj je liniji greška!
Odgovor: 6
/
Pitanje 16 Točno Broj bodova: 5,00 od 5,00
U funkciji koja obavlja BINARNO PRETRAŽIVANJE dodajte dijelove koji nedostaju kako bi ona ispravno radila.
for (;;) {
mid = (l + r) / 2 ;
U funkciji koja dodaje element u povezanu listu dodajte dijelove koji nedostaju kako bi ona ispravno radila.
struct ppopis{
int broj;
ppopis * next;
};
temp1 = glava ;
ppopis *old_temp;
while(temp1->next!=NULL){
old_temp = temp1;
free( temp1 );
/
Pitanje 18 Točno Broj bodova: 5,00 od 5,00
U funkciji BUBBLE-SORT koja sortira podatke niza dodajte dijelove koji nedostaju kako bi ona ispravno radila.
U funkciji koja obavlja SELECT-SORT dodajte dijelove koji nedostaju kako bi ona ispravno radila.
int i, j;
V[i] = V[j];
V[j] = temp ;
/
Pitanje 20 Točno Broj bodova: 10,00 od 10,00
Preuredi redoslijed naredbi funkcije brojparnih koja izračunava i vraća kao rezultat broj parnih podataka u
povezanoj listi.
int rez = 0;
oe *t;
if (t->x%2==0) rez++;
return rez;
/
Pitanje 21 Točno Broj bodova: 10,00 od 10,00
Dodijelite svakom čvoru njegove nasljednike (ako ih ima) za poredano binarno stablo predstavljeno ulaznim
vektorom [6,8,1,22,30,48,18,12,100,20,40,19].
8 -,22
18 12,20
40 -,-
12 -,-
6 1,8
100 -,-
1 -,-
30 -,48
20 19,-
48 40,100
22 18,30
19 -,-
Ispravan odgovor je: 8 → -,22, 18 → 12,20, 40 → -,-, 12 → -,-, 6 → 1,8, 100 → -,-, 1 → -,-, 30 → -,48, 20 → 19,-, 48 → 40,100, 22
→ 18,30, 19 → -,-
/
Pitanje 22 Djelomično točno Broj bodova: 0,00 od 20,00
Napisati funkciju "void obrisiNeparne( oe *prvi )" koja briše sve elemente cjelobrojne povezane liste koji su neparni.
Osnovni element liste oe se sastoji od cjelobrojnog podatka 'x', te pokazivača na isti takav osnovni element 'sljedeci'.
/
Test Input Expected
test2 2 8 0
test3 3
test4 4 18
test5 5
Djelomično točno
Bodovi za ovaj pokuštaj: 8,00/20,00. Zbog prethodnih pokušaja, broj bodova je: 0,00/20,00.
/
Započeto ponedjeljak, 1. veljače 2021., 18:30
Stanje Završeno
Završeno ponedjeljak, 1. veljače 2021., 19:13
Proteklo vrijeme 43 min 21 s
Ocjena 60,67 od maksimalno 100,00
Točno
Netočno
Točno
Netočno
Čvor povezane liste ne možemo koristiti u C-u bez korištenja ključne riječi i naredbe typedef.
Točno
Netočno
Točno
Netočno
/
Pitanje 5 Netočno Broj bodova: 0,00 od 2,00
Točno
Netočno
Točno
Netočno
/
Pitanje 7 Točno Broj bodova: 2,00 od 2,00
Točno
Netočno
Kod prikaza binarnog stabla u matrici s tri stupca korijenski čvor mora biti u prvom retku.
Točno
Netočno
/
Pitanje 9 Točno Broj bodova: 2,00 od 2,00
Točno
Netočno
Posljednja razina u hrpi ne mora biti popunjena, ali mora biti popunjavana s lijeva na desno.
Točno
Netočno
/
Pitanje 11 Točno Broj bodova: 4,00 od 4,00
Zadan je dio programa u C-u koji je napisan prema algoritmu binarnog pretraživanja. Napisani su i brojevi linija. Međutim, u jednoj liniji se nalazi
greška. U kojoj?
1. dg = 0;
2. gg = N-1;
3. for (;;) {
4. s = (dg+gg)/2;
5. if (V[s]==x) {
6. printf( "%d Pronadjen! Na %d. poziciji u nizu.\n", x, s );
7. exit( 0 );
8. }
9. if (x<V[s]) gg = s-1;
10. if (x>V[s]) dg = s+1;
11. if (V[s]!=x) {
12. printf( "%d nije pronadjen!\n", x );
13. exit( 1 );
14. }
15. }
Odgovor: 11
/
Pitanje 12 Točno Broj bodova: 4,00 od 4,00
Svaki element zauzima više mjesta u memoriji nego element kod nizova (polja).
Ispravni odgovori su: To je dinamička struktura podataka (koristi dinamičko zauzimanje i oslobađanje memorije), Svaki element zauzima više mjesta u
memoriji nego element kod nizova (polja).
Ako je zadana rekurzivna funcija koja računa faktorijele: int fakt( int n ), koliko će biti rekurzivnih poziva ako ju pozovemo s fakt( 272 )?
Odgovor: 272
/
Pitanje 14 Točno Broj bodova: 4,00 od 4,00
Stablo kod kojeg sve razine moraju biti popunjene, osim zadnje razine koja mora biti popunjena s lijeva na desno se naziva:
b. Opće stablo
/
Pitanje 15 Netočno Broj bodova: 0,00 od 4,00
Neka je zadana procedura void UHRPI(int i) koja uhrpljava čvor na i-tom mjestu prema algoritmu koji smo učili na predavanju i
procedura zamjeni(..) koja zamjenjuje mjesta dva elementa u zadanom nizu V od N elemenata. NH je broj elemenata hrpe.
1. void HeapSort() {
2. int i;
3. NH = N;
4. for (i=NH/2, i>=0, i--) UHRPI( i );
5. for (i=NH-1, i>=1, i--) {
6. zamjeni( &V[0], &V[i] );
7. NH--;
8. UHRPI( 0 );
9. }}
Međutim ova procedura ima grešku. Napišite u kojoj je liniji greška!
Odgovor: 6
/
Pitanje 16 Djelomično točno Broj bodova: 2,00 od 5,00
U funkciji koja dodaje element u povezanu listu dodajte dijelove koji nedostaju kako bi ona ispravno radila.
struct ppopis{
int broj;
ppopis * next;
};
temp1 = &glava ;
ppopis *old_temp;
while(temp1->next!=NULL){
old_temp = temp1;
free( old_temp->next );
/
Pitanje 17 Točno Broj bodova: 5,00 od 5,00
U rekurzivnoj funkciji MERGE-SORT koja sortira podatke niza dodajte dijelove koji nedostaju kako bi ona ispravno radila.
if (l < r ) {
int s = (l+r) / 2 ;
MergeSort(l, s);
MergeSort (s + 1 , r);
merge( l , r);
/
Pitanje 18 Točno Broj bodova: 5,00 od 5,00
U funkciji koja briše duplikate (pretpostavljamo da je lista sortirana) iz povezane liste dodajte dijelove koji nedostaju kako bi ona ispravno radila.
struct element{
int X;
element * next;
};
element *p = glava;
while (p->next) {
if (p->X == p->next->X ) {
tmp = p->next->next ;
free( p->next );
p->next = tmp ;
}else {
p = p->next ;
/
Pitanje 19 Djelomično točno Broj bodova: 3,00 od 5,00
U funkciji za obilazak stabla dodajte dijelove koji nedostaju kako bi ona ispravno radila.
else{
inOrder(root-> left );
printf( "%d",root->x );
inOrder(root-> right );
/
Pitanje 20 Djelomično točno Broj bodova: 1,67 od 10,00
Preuredi redoslijed naredbi funkcije brojparnih koja izračunava i vraća kao rezultat broj parnih podataka u povezanoj listi.
int rez = 0;
oe *t;
if (t->x%2==0) rez++;
return rez;
1. 0 / 1 = 0%
2. 1 / 1 = 100%
3. 0 / 1 = 0%
4. 0 / 1 = 0%
5. 0 / 1 = 0%
6. 0 / 1 = 0%
Uredite redoslijed naredbi kako dobili funkciju 'obilazak' koja bi odgovarala postorder (LDN) obilasku stabla.
printf("%d ",cvor->x);
/
Pitanje 22 Netočno Broj bodova: 0,00 od 20,00
r->desni = p;
//vaš kod
Syntax Error(s) /
__tester__.c: In function ‘ubaci’:
__tester__.c:18:32: error: ‘struct cvor’ has no member named ‘x’
else if((r->desni != NULL)&&(p->x > r->x)){
^~
__tester__.c:18:39: error: ‘struct cvor’ has no member named ‘x’
else if((r->desni != NULL)&&(p->x > r->x)){
^~
__tester__.c:22:28: error: ‘struct cvor’ has no member named ‘x’
if((r->lijevi == NULL)&& (p->x < r->x)){
^~
__tester__.c:22:35: error: ‘struct cvor’ has no member named ‘x’
if((r->lijevi == NULL)&& (p->x < r->x)){
^~
__tester__.c:26:33: error: ‘struct cvor’ has no member named ‘x’
else if ((r->lijevi != NULL)&&(p->x < r->x)){
^~
__tester__.c:26:40: error: ‘struct cvor’ has no member named ‘x’
else if ((r->lijevi != NULL)&&(p->x < r->x)){
^~
Netočno
/
Započeto ponedjeljak, 1. veljače 2021., 18:30
Stanje Završeno
Završeno ponedjeljak, 1. veljače 2021., 18:57
Proteklo vrijeme 27 min 22 s
Ocjena 91,67 od maksimalno 100,00
Točno
Netočno
Točno
Netočno
/
Pitanje 3 Točno Broj bodova: 2,00 od 2,00
Ako imamo sortiranu povezanu listu onda ju možemo pretraživati algoritmom binarnog pretraživanja.
Točno
Netočno
Povezana lista se može obići unatrag (od zadnjeg elementa do prvog) u linearnom vremenu O( n ).
Točno
Netočno
Točno
Netočno
/
Pitanje 6 Netočno Broj bodova: 0,00 od 2,00
Točno
Netočno
Kod prikaza binarnog stabla u matrici s tri stupca korijenski čvor mora biti u prvom retku.
Točno
Netočno
Točno
Netočno
/
Pitanje 9 Točno Broj bodova: 2,00 od 2,00
Točno
Netočno
Točno
Netočno
/
Pitanje 11 Točno Broj bodova: 4,00 od 4,00
Zadan je dio programa u C-u koji je napisan prema algoritmu binarnog pretraživanja. Napisani su i brojevi
linija. Međutim, u jednoj liniji se nalazi greška. U kojoj?
1. dg = 0;
2. gg = N-1;
3. for (;;) {
4. s = (dg+gg)/2;
5. if (s==x) {
6. printf( "%d Pronadjen! Na %d. poziciji u nizu.\n", x, s );
7. exit( 0 );
8. }
9. if (x<V[s]) gg = s-1;
10. if (x>V[s]) dg = s+1;
11. if (dg>=gg) {
12. printf( "%d nije pronadjen!\n", x );
13. exit( 1 );
14. }
15. }
Odgovor: 5
/
Pitanje 12 Točno Broj bodova: 4,00 od 4,00
Ispravan odgovor je: Dodavanje novog elementa na početak povezane liste → 2 (srednje), Brisanje svih elemenata
liste → 3 (najsporije), Ispitivanje je li povezana lista prazna → 1 (najbrže)
Ako je zadana rekurzivna funcija koja računa faktorijele: int fakt( int n ), koliko će biti rekurzivnih
poziva ako ju pozovemo s fakt( 207 )?
Odgovor: 207
/
Pitanje 14 Djelomično točno Broj bodova: 2,67 od 4,00
Opće stablo
Hrpa
/
Pitanje 15 Netočno Broj bodova: 0,00 od 4,00
Neka je zadana procedura void UHRPI(int i) koja uhrpljava čvor na i-tom mjestu prema algoritmu koji
smo učili na predavanju i procedura zamjeni(..) koja zamjenjuje mjesta dva elementa u zadanom nizu V
od N elemenata. NH je broj elemenata hrpe.
1. void HeapSort() {
2. int i;
3. NH = N;
4. for (i=NH/2; i>=0; i--) UHRPI( i );
5. for (i=NH-1; i>=1; i--) {
6. zamjeni( &V[0], &V[i] );
7. NH--;
8. UHRPI( 1 );
9. }}
Međutim ova procedura ima grešku. Napišite u kojoj je liniji greška!
Odgovor: 6
/
Pitanje 16 Točno Broj bodova: 5,00 od 5,00
U funkciji koja obavlja BINARNO PRETRAŽIVANJE dodajte dijelove koji nedostaju kako bi ona ispravno radila.
for (;;) {
mid = (l + r) / 2 ;
U funkciji koja obavlja SEKVENCIJALNO PRETRAŽIVANJE dodajte dijelove koji nedostaju kako bi ona ispravno radila.
int i;
if (V[ i ] == x)
return i;
return -1;
/
Pitanje 18 Točno Broj bodova: 5,00 od 5,00
U funkciji HEAP SORT koja sortira podatke koristeći hrpu dodajte dijelove koji nedostaju kako bi ona ispravno radila.
/
Pitanje 19 Djelomično točno Broj bodova: 4,00 od 5,00
U funkciji koja stvara povezanu listu dodajte dijelove koji nedostaju kako bi ona ispravno radila.
struct cvor{
int x;
};
struct cvor * p;
for(int i=0;i<n;i++){
if(i==0){
glava->next=NULL;
glava ->x=polje[i];
p=glava;
}else{
tmp=p;
p = p->next;
p->next= NULL ;
p->x=polje[i];
return glava;
/
Pitanje 20 Točno Broj bodova: 10,00 od 10,00
#include <stdio.h>
#include <stdlib.h>
int main() {
oe *p1 = NULL, *p2=NULL, *t1, *t2;
ubaci( &p1, 1 );
ubaci( &p2, 2 );
ubaci( &p1, 3 );
ubaci( &p2, 4 );
ubaci( &p1, 5 );
ubaci( &p2, 6 );
for (t1=p1, t2=p2; t1!=NULL; t1=t1->sljedeci)
printf("%d%d",t1->x, t2->x);
return 0;
}
Odgovor: 563616
/
Pitanje 21 Točno Broj bodova: 10,00 od 10,00
Uredite redoslijed naredbi kako dobili funkciju 'obilazak' koja bi odgovarala inorder (LND) obilasku stabla.
printf("%d ",cvor->x);
/
Pitanje 22 Točno Broj bodova: 20,00 od 20,00
r->desni = p;
//vaš kod
Točno
/
Započeto ponedjeljak, 1. veljače 2021., 18:30
Navigacija u testu Stanje Završeno
Završeno ponedjeljak, 1. veljače 2021., 19:10
1 2 3 4 5 6 7
Proteklo vrijeme 40 min 7 s
Ocjena 93,00 od maksimalno 100,00
8 9 10 11 12 13 14
15 16 17 18 19 20 21
Pitanje 1 Netočno Broj bodova: 0,00 od 2,00 Označi pitanje
Točno
Netočno
Povezane liste uz svaki podatak koriste i dodatnu memorijsku adresu kako bi se znalo gdje je sljedeći podatak.
Točno
Netočno
Ako povezana lista ima pokazivače na prvog i na zadnjeg, onda možemo trenutačno (u vremenu O(1)) obrisati zadnji podatak.
Točno
Netočno
Točno
Netočno
Pitanje 6 Točno Broj bodova: 2,00 od 2,00 Kliknite za uklanjanje oznake neprikladnosti
Točno
Netočno
Kod prikaza binarnog stabla u matrici s tri stupca korijenski čvor mora biti u prvom retku.
Točno
Netočno
Točno
Netočno
Pitanje 9 Točno Broj bodova: 2,00 od 2,00 Kliknite za uklanjanje oznake neprikladnosti
Točno
Netočno
Točno
Netočno
Zadan je dio programa u C-u koji je napisan prema algoritmu binarnog pretraživanja. Napisani su i brojevi linija. Međutim, u jednoj liniji se
nalazi greška. U kojoj?
1. dg = 0;
2. gg = N-1;
3. for (;;) {
4. s = (dg+gg)/2;
5. if (V[s]==x) {
6. printf( "%d Pronadjen! Na %d. poziciji u nizu.\n", x, s );
7. exit( 0 );
8. }
9. if (x>V[s]) gg = s-1;
10. if (x>V[s]) dg = s+1;
11. if (dg>=gg) {
12. printf( "%d nije pronadjen!\n", x );
13. exit( 1 );
14. }
15. }
Odgovor: 9
Svaki element zauzima više mjesta u memoriji nego element kod nizova (polja).
Ispravni odgovori su: To je dinamička struktura podataka (koristi dinamičko zauzimanje i oslobađanje memorije), Svaki element zauzima više mjesta u
memoriji nego element kod nizova (polja).
Ako je zadana rekurzivna funcija koja računa faktorijele: int fakt( int n ), koliko će biti rekurzivnih poziva ako ju pozovemo s fakt( 801 )?
Odgovor: 801
Binarno stablo
Hrpa
Opće stablo
Ispravni odgovori su: Poredano binarno stablo, Opće stablo, Binarno stablo
Neka je zadana procedura void UHRPI(int i) koja uhrpljava čvor na i-tom mjestu prema algoritmu koji smo učili na predavanju i
procedura zamjeni(..) koja zamjenjuje mjesta dva elementa u zadanom nizu V od N elemenata. NH je broj elemenata hrpe.
1. void HeapSort() {
2. int i;
3. NH = N;
4. for (i=NH/2; i>=0; i--) UHRPI( i );
5. for (i=NH-1; i>=1; i--) {
6. zamjeni( &V[0], &V[i] );
7. NH--;
8. UHRPI( i );
9. }}
Međutim ova procedura ima grešku. Napišite u kojoj je liniji greška!
Odgovor: 8
U funkciji koja sortira povezanu listu dodajte dijelove koji nedostaju kako bi ona ispravno radila.
ppopis *temp1;
temp1 = new ppopis;
ppopis *temp2;
temp2 = new ppopis;
int temp=0;
temp1->broj = temp2->broj;
temp2->broj=temp;
}
}
}
}
U rekurzivnoj funkciji MERGE-SORT koja sortira podatke niza dodajte dijelove koji nedostaju kako bi ona ispravno radila.
if (l < r ) {
int s = (l+r) / 2 ;
MergeSort(l, s);
MergeSort (s + 1 , r);
merge( s , r);
U funkciji koja obavlja SELECT-SORT dodajte dijelove koji nedostaju kako bi ona ispravno radila.
int i, j;
V[i] = V[j];
V[j] = temp ;
U funkciji koja briše duplikate (pretpostavljamo da je lista sortirana) iz povezane liste dodajte dijelove koji nedostaju kako bi ona ispravno radila.
struct element{
int X;
element * next;
};
element *p = glava;
while (p->next) {
if (p->X == p->next->X ) {
tmp = p->next->next ;
free( p->next );
p->next=tmp ;
}else {
p=p->next ;
Preuredi redoslijed naredbi funkcije ubaci koja ubacuje novi čvor na početak kraj povezane liste.
novi->x = novix;
novi->sljedeci = NULL;
t2 = *t;
while (t2->sljedeci!=NULL) t2=t2->sljedeci;
t2->sljedeci = novi;
Uredite redoslijed naredbi kako dobili funkciju 'obilazak' koja bi odgovarala postorder (LDN) obilasku stabla.
printf("%d ",cvor->x);
Napisati funkciju "void usporedi( oe *p1, oe *p2 )" koja uspoređuje dvije liste i ispisuje "DA" ako su liste potpuno iste, "NE" ako imaju bilo koji
element različit.
Osnovni element liste oe se sastoji od cjelobrojnog podatka 'x', te pokazivača na isti takav osnovni element 'sljedeci'.
Npr. ako je prva povezana lista: 1,7,12,5,4, druga 1,7,12,5,4, onda funkcija treba ispisati "DA".
Npr. ako je prva povezana lista: 9,7,13, druga 1,7,,5,4, onda funkcija treba ispisati "NE".
test1 1 DA DA
Točno
Završi pregled
Započeto ponedjeljak, 1. veljače 2021., 18:30
Stanje Završeno
Završeno ponedjeljak, 1. veljače 2021., 19:15
Proteklo vrijeme 45 min 1 sek
Ocjena 68,00 od maksimalno 100,00
Točno
Netočno
Točno
Netočno
Točno
Netočno
Točno
Netočno
/
Pitanje 5 Točno Broj bodova: 2,00 od 2,00
Točno
Netočno
Točno
Netočno
Točno
Netočno
Kod prikaza binarnog stabla u matrici s tri stupca korijenski čvor mora biti u prvom retku.
Točno
Netočno
Točno
Netočno
/
Pitanje 10 Točno Broj bodova: 2,00 od 2,00
2
HeapSort algoritam koji koristi hrpu za sortiranje je brži algoritam za sortiranje i njegova složenost je O( N ).
Točno
Netočno
Zadan je dio programa u C-u koji je napisan prema algoritmu binarnog pretraživanja. Napisani su i brojevi linija. Međutim, u jednoj liniji se nalazi greška. U kojoj?
1. dg = 0;
2. gg = N-1;
3. for (;;) {
4. s = (dg+gg)/2;
5. if (V[s]==x) {
6. printf( "%d Pronadjen! Na %d. poziciji u nizu.\n", x, s );
7. exit( 0 );
8. }
9. if (x>V[s]) gg = s-1;
10. if (x>V[s]) dg = s+1;
11. if (dg>=gg) {
12. printf( "%d nije pronadjen!\n", x );
13. exit( 1 );
14. }
15. }
Odgovor: 9
Pristup elementu kod povezanih lista ima složenost O( n ). Ovakva složenost se još naziva i linearna složenost.
Kod problema povrh(a,b), ako je a=1674, koliko treba biti b, da bi izvršavanje ove funkcije trajalo najduže?
Odgovor:
/
Pitanje 14 Netočno Broj bodova: 0,00 od 4,00
Opće stablo
Binarno stablo
Ispravni odgovori su: Poredano binarno stablo, Opće stablo, Binarno stablo
Neka je zadana procedura void UHRPI(int i) koja uhrpljava čvor na i-tom mjestu prema algoritmu koji smo učili na predavanju i procedura zamjeni(..) koja
zamjenjuje mjesta dva elementa u zadanom nizu V od N elemenata. NH je broj elemenata hrpe.
1. void HeapSort() {
2. int i;
3. NH = N;
4. for (i=NH/2; i>=0; i--) UHRPI( i );
5. for (i=NH-1; i>=1; i--) {
6. zamjeni( &V[0], &V[i] );
7. NH--;
8. UHRPI( i );
9. }}
Međutim ova procedura ima grešku. Napišite u kojoj je liniji greška!
Odgovor: 8
/
Pitanje 16 Točno Broj bodova: 5,00 od 5,00
Dana je funkcija koja generira slučajni niz sastavljen od nula i jedinica, tako da se ne mogu pojaviti više od 3 uzastopne jedinice. Popunite polja koja nedostaju tako da programski kod
radi ispravno.
int uzast1=0;
a[i] = rand()% 2 ;
if (a[i] == 1) uzast1++;
if (uzast1> 3 ) {
a[i] = 0 ;
uzast1 = 0 ;
U funkciji koja računa povrh koristeći stog dodajte dijelove koji nedostaju kako bi ona ispravno radila.
int n, m, povrh= 0 ;
Clear(s1); Clear( s2 );
do {
n = Pop(s1);
m = Pop(s2);
if (m == n || n == 1 then m == 0) povrh++;
else {
Push(s1, n - 1);
Push(s2, m - 1);
Push(s1, n - 1);
Push(s2, m );
return povrh;
/
Pitanje 18 Točno Broj bodova: 5,00 od 5,00
U funkciji koja dodaje element u povezanu listu dodajte dijelove koji nedostaju kako bi ona ispravno radila.
struct ppopis{
int broj;
ppopis * next;
};
temp1 = glava ;
ppopis *old_temp;
while(temp1->next!=NULL){
old_temp = temp1;
free( temp1 );
U funkciji (ne rekurzivnoj) koja pretražuje poredano binarno stablo dodajte dijelove koji nedostaju kako bi ona ispravno radila.
cvor *p = glava;
while ( glava!=NULL ){
else return 1 ;
return 0 ;
/
Pitanje 20 Točno Broj bodova: 10,00 od 10,00
Preuredi redoslijed naredbi funkcije brojparnih koja izračunava i vraća kao rezultat broj parnih podataka u povezanoj listi.
int rez = 0;
oe *t;
if (t->x%2==0) rez++;
return rez;
LND 35,44,20,42,18,43,55,16,85,90
NLD 85,44,35,43,18,20,42,55,16,90
LDN 35,42,20,18,16,55,43,44,90,85
/
Pitanje 22 Netočno Broj bodova: 0,00 od 20,00
Napisati rekurzivnu funkciju "int pronadji(struct cvor *root, int n)" koja će pronaći (ako postoji) traženu vrijednost n u poredanom binarnom stablu. Ako cvor sa trazenom
vrijednoscu postoji funkcija treba vratiti vrijednost 1, a ukoliko ne postoji 0. Stablo je predstavljeno strukturom cvor koja sadrzi cjelobrojni podatak X te pokazivače na lijevog
nasljednika lijevi i pokazivača na desnog nasljednika desni;
Syntax Error(s)
Netočno
/
Započeto ponedjeljak, 1. veljače 2021., 18:33
Stanje Završeno
Završeno ponedjeljak, 1. veljače 2021., 19:16
Proteklo vrijeme 43 min 50 s
Ocjena 74,33 od maksimalno 100,00
Točno
Netočno
Točno
Netočno
Ako imamo dvostruko povezanu listu onda možemo pristupiti svakom podatku trenutačno O(1).
Točno
Netočno
Točno
Netočno
/
Pitanje 5 Netočno Broj bodova: 0,00 od 2,00
Svaki algoritam koji je dan kao rekurzivna funkcija ili procedura moze se rijestiti iterativno pomocu reda.
Točno
Netočno
Točno
Netočno
Točno
Netočno
Točno
Netočno
/
Pitanje 9 Točno Broj bodova: 2,00 od 2,00
Točno
Netočno
Algoritam za sortiranje BubbleSort je sporiji od algoritma za sortiranje koji koristi hrpu HeapSort.
Točno
Netočno
Zadan je dio programa u C-u koji je napisan prema algoritmu binarnog pretraživanja. Napisani su i brojevi linija. Međutim, u jednoj liniji se nalazi greška. U kojoj?
1. dg = 0;
2. gg = N-1;
3. for (;;) {
4. s = (dg+gg)/2;
5. if (s==x) {
6. printf( "%d Pronadjen! Na %d. poziciji u nizu.\n", x, s );
7. exit( 0 );
8. }
9. if (x<V[s]) gg = s-1;
10. if (x>V[s]) dg = s+1;
11. if (dg>=gg) {
12. printf( "%d nije pronadjen!\n", x );
13. exit( 1 );
14. }
15. }
Odgovor: 5
/
Pitanje 12 Točno Broj bodova: 4,00 od 4,00
Pristup elementu kod povezanih lista ima složenost O( n ). Ovakva složenost se još naziva i linearna složenost.
Kod problema povrh(a,b), ako je a=1240, koliko treba biti b, da bi izvršavanje ove funkcije trajalo najduže?
Odgovor: 620
Opće stablo
Binarno stablo
Hrpa
/
Pitanje 15 Točno Broj bodova: 4,00 od 4,00
Neka je zadana procedura void UHRPI(int i) koja uhrpljava čvor na i-tom mjestu prema algoritmu koji smo učili na predavanju i
procedura zamjeni(..) koja zamjenjuje mjesta dva elementa u zadanom nizu V od N elemenata. NH je broj elemenata hrpe.
1. void HeapSort() {
2. int i;
3. NH = N;
4. for (i=NH/2; i>=0; i--) UHRPI( i );
5. for (i=NH-1; i<0; i--) {
6. zamjeni( &V[0], &V[i] );
7. NH--;
8. UHRPI( 0 );
9. }}
Međutim ova procedura ima grešku. Napišite u kojoj je liniji greška!
Odgovor: 5
U funkciji koja računa povrh koristeći rekurziju dodajte dijelove koji nedostaju kako bi ona ispravno radila.
if (m == n || n == 1 || m == 0)
return 1 ;
else
U funkciji BUBBLE-SORT koja sortira podatke niza dodajte dijelove koji nedostaju kako bi ona ispravno radila.
/
Pitanje 18 Točno Broj bodova: 5,00 od 5,00
int sp;
int capacity;
int* array;
} Stack;
printf("Error.Stack overflow.\n");
else {
s->sp += 1 ;
s->array[s->sp] = x ;
U funkciji koja dodaje element u povezanu listu dodajte dijelove koji nedostaju kako bi ona ispravno radila.
struct ppopis{
int broj;
ppopis * next;
};
temp1 = glava ;
ppopis *old_temp;
while(temp1->next!=NULL){
old_temp = temp1;
free( old_temp );
/
Pitanje 20 Točno Broj bodova: 10,00 od 10,00
Preuredi redoslijed naredbi funkcije ubaci koja ubacuje novi čvor na početak povezane liste.
novi->x = novix;
novi->sljedeci = *t;
*t = novi;
NLD 85,44,35,43,18,20,42,55,16,90
LND 35,44,20,42,18,43,55,16,85,90
LDN 35,42,20,18,16,55,43,44,90,85
/
Pitanje 22 Netočno Broj bodova: 0,00 od 20,00
Zadana je povezana lista predstavljena strukturom element koja se sastoji od cjelobrojnog podatka X i pokazivača next na sljedeći element povezane liste.
Napisati algoritam koji će stvoriti novu listu koja će sadržavati sve parne brojeve zadane liste u obrnutom redoslijedu.
Napisati funkciju "povezanaLista(struct element * glava)" koja na ekran ispisuje izgled nove povezane liste.
NAPOMENA:
** Koristiti C jezik!
** Za ispis povezane liste pozvati već spremnu funkciju ispis(struct element * glava).
Npr.
//vaš kod
ispis(nova_lista);
ispis(nova_lista);
}
/
Syntax Error(s)
Netočno
/
Započeto ponedjeljak, 1. veljače 2021., 18:30
Stanje Završeno
Završeno ponedjeljak, 1. veljače 2021., 19:07
Proteklo vrijeme 37 min 2 s
Ocjena 89,17 od maksimalno 100,00
Točno
Netočno
Točno
Netočno
/
Pitanje 3 Točno Broj bodova: 2,00 od 2,00
Točno
Netočno
Točno
Netočno
/
Pitanje 5 Točno Broj bodova: 2,00 od 2,00
Točno
Netočno
Rekurzivna funkcija ili procedura uvijek mora sadržavati osnovni slučaj koji je nerekurzivan.
Točno
Netočno
/
Pitanje 7 Točno Broj bodova: 2,00 od 2,00
Točno
Netočno
Točno
Netočno
/
Pitanje 9 Netočno Broj bodova: 0,00 od 2,00
Točno
Netočno
Novi čvor se uvijek dodaje kao zadnji element u hrpu i tamo ostaje.
Točno
Netočno
/
Pitanje 11 Netočno Broj bodova: 0,00 od 4,00
Zadan je dio programa u C-u koji je napisan prema algoritmu binarnog pretraživanja. Napisani su i brojevi linija. Međutim, u jednoj liniji se nalazi greška. U kojoj?
1. dg = 0;
2. gg = N-1;
3. for (;;) {
4. s = (dg+gg)/2;
5. if (V[s]==x) {
6. printf( "%d Pronadjen! Na %d. poziciji u nizu.\n", x, s );
7. exit( 0 );
8. }
9. if (x<V[s]) gg = s-1;
10. if (x<V[s]) dg = s+1;
11. if (dg>=gg) {
12. printf( "%d nije pronadjen!\n", x );
13. exit( 1 );
14. }
15. }
Odgovor: 9
Pristup elementu kod povezanih lista ima složenost O( n ). Ovakva složenost se još naziva i linearna složenost.
/
Pitanje 13 Nije odgovoreno Broj bodova od 4,00
Kod problema povrh(a,b), ako je a=1557, koliko treba biti b, da bi izvršavanje ove funkcije trajalo najduže?
Odgovor:
Hrpa
Opće stablo
Ispravni odgovori su: Poredano binarno stablo, Opće stablo, Binarno stablo
/
Pitanje 15 Točno Broj bodova: 4,00 od 4,00
Neka je zadana procedura void UHRPI(int i) koja uhrpljava čvor na i-tom mjestu prema algoritmu koji smo učili na predavanju i procedura zamjeni(..) koja
zamjenjuje mjesta dva elementa u zadanom nizu V od N elemenata. NH je broj elemenata hrpe.
1. void HeapSort() {
2. int i;
3. NH = N;
4. for (i=NH/2; i>=0; i--) UHRPI( i );
5. for (i=NH-1; i>=1; i--) {
6. zamjeni( &V[0], &V[i] );
7. NH--;
8. UHRPI( i );
9. }}
Međutim ova procedura ima grešku. Napišite u kojoj je liniji greška!
Odgovor: 8
/
Pitanje 16 Točno Broj bodova: 5,00 od 5,00
U funkciji za obilazak stabla (ne rekurzivna - koristeći stogove) dodajte dijelove koji nedostaju kako bi ona ispravno radila.
cvor * p = glava;
push(p);
while(!emp()){
p_temp = pop() ;
if(p_temp-> right ){
push(p_temp-> right );
if(p_temp-> left ){
push(p_temp-> left );
/
Pitanje 17 Točno Broj bodova: 5,00 od 5,00
U funkciji koja računa povrh koristeći rekurziju dodajte dijelove koji nedostaju kako bi ona ispravno radila.
if (m == n || n == 1 || m == 0)
return 1 ;
else
/
Pitanje 18 Točno Broj bodova: 5,00 od 5,00
U funkciji koja računa povrh koristeći stog dodajte dijelove koji nedostaju kako bi ona ispravno radila.
int n, m, povrh= 0 ;
Clear(s1); Clear( s2 );
do {
n = Pop(s1);
m = Pop(s2);
if (m == n || n == 1 || m == 0) povrh++;
else {
Push(s1, n - 1);
Push(s2, m - 1);
Push(s1, n - 1);
Push(s2, m );
return povrh;
/
Pitanje 19 Točno Broj bodova: 5,00 od 5,00
U funkciji za obilazak stabla dodajte dijelove koji nedostaju kako bi ona ispravno radila.
else{
inOrder(root-> left );
printf( root->x );
inOrder(root-> right );
/
Pitanje 20 Točno Broj bodova: 10,00 od 10,00
#include <stdio.h>
#include <stdlib.h>
int main() {
oe *p1 = NULL, *p2=NULL, *t1, *t2;
ubaci( &p1, 1 );
ubaci( &p2, 2 );
ubaci( &p1, 3 );
ubaci( &p2, 4 );
ubaci( &p1, 5 );
ubaci( &p2, 6 );
for (t1=p1, t2=p2; t1!=NULL; t1=t1->sljedeci)
printf("%d%d",t1->x, t2->x);
return 0;
}
Odgovor: 563616
/
Pitanje 21 Djelomično točno Broj bodova: 9,17 od 10,00
Dodijelite svakom čvoru njegove nasljednike (ako ih ima) za poredano binarno stablo predstavljeno ulaznim vektorom [6,8,1,22,30,48,18,12,100,20,40,19].
30 -,48
22 18,30
8 -,22
20 19,-
19 -,-
40 -,-
1 -,-
12 -,-
18 80,12
48 40,100
100 -,-
6 1,8
/
Pitanje 22 Točno Broj bodova: 20,00 od 20,00
r->desni = p;
//vaš kod
/
Passed all tests!
Točno
/
Započeto ponedjeljak, 1. veljače 2021., 18:30
Stanje Završeno
Završeno ponedjeljak, 1. veljače 2021., 19:06
Proteklo vrijeme 35 min 47 s
Ocjena 99,00 od maksimalno 100,00
Točno
Netočno
Točno
Netočno
/
Pitanje 3 Točno Broj bodova: 2,00 od 2,00
Čvor povezane liste ne možemo koristiti u C-u bez korištenja ključne riječi i naredbe typedef.
Točno
Netočno
Ako imamo sortiranu povezanu listu onda ju možemo pretraživati algoritmom binarnog pretraživanja.
Točno
Netočno
Točno
Netočno
/
Pitanje 6 Točno Broj bodova: 2,00 od 2,00
Rekurzivna funkcija ili procedura uvijek mora sadržavati osnovni slučaj koji je nerekurzivan.
Točno
Netočno
Točno
Netočno
Točno
Netočno
/
Pitanje 9 Točno Broj bodova: 2,00 od 2,00
Desni nasljednik od i-tog čvora u hrpi se nalazi po formuli 2*i+1, ukoliko je to manje od broja elemenata
hrpe.
Točno
Netočno
Novi čvor se uvijek dodaje kao zadnji element u hrpu i tamo ostaje.
Točno
Netočno
/
Pitanje 11 Točno Broj bodova: 4,00 od 4,00
Zadan je dio programa u C-u koji je napisan prema algoritmu binarnog pretraživanja. Napisani su i brojevi
linija. Međutim, u jednoj liniji se nalazi greška. U kojoj?
1. dg = 0;
2. gg = N-1;
3. for (;;) {
4. s = (dg+gg)/2;
5. if (s==x) {
6. printf( "%d Pronadjen! Na %d. poziciji u nizu.\n", x, s );
7. exit( 0 );
8. }
9. if (x<V[s]) gg = s-1;
10. if (x>V[s]) dg = s+1;
11. if (dg>=gg) {
12. printf( "%d nije pronadjen!\n", x );
13. exit( 1 );
14. }
15. }
Odgovor: 5
/
Pitanje 12 Točno Broj bodova: 4,00 od 4,00
Dinamičko zauzimanje i oslobađanje memorije u C-u se vrši funkcijama malloc i free. U kojoj standardnoj
biblioteci su de nirane ove funkcije?
b. mallocfree.h
c. stdlib.h
d. math.h
e. stdio.h
Kod problema povrh(a,b), ako je a=549, koliko treba biti b, da bi izvršavanje ove funkcije trajalo najduže?
Odgovor: 274
/
Pitanje 14 Točno Broj bodova: 4,00 od 4,00
NLD Preorder
LDN Postorder
LND Inorder
Ispravan odgovor je: NLD → Preorder, LDN → Postorder, LND → Inorder, DLN → Takav obilazak ne postoji
/
Pitanje 15 Točno Broj bodova: 4,00 od 4,00
Neka je zadana procedura void UHRPI(int i) koja uhrpljava čvor na i-tom mjestu prema algoritmu koji
smo učili na predavanju i procedura zamjeni(..) koja zamjenjuje mjesta dva elementa u zadanom nizu V
od N elemenata. NH je broj elemenata hrpe.
1. void HeapSort() {
2. int i;
3. NH = N;
4. for (i=NH/2; i>=0; i--) UHRPI( i );
5. for (i=NH-1; i>=1; i--) {
6. zamjeni( &V[0], &V[i] );
7. NH--;
8. UHRPI( i );
9. }}
Međutim ova procedura ima grešku. Napišite u kojoj je liniji greška!
Odgovor: 8
U funkciji BUBBLE-SORT koja sortira podatke niza dodajte dijelove koji nedostaju kako bi ona ispravno radila.
/
Pitanje 17 Djelomično točno Broj bodova: 4,00 od 5,00
int sp;
int capacity;
int* array;
} Stack;
printf("Error.Stack overflow.\n");
else {
s->sp += 1 ;
s->array[s->sp] = x ;
U rekurzivnoj funkciji MERGE-SORT koja sortira podatke niza dodajte dijelove koji nedostaju kako bi ona ispravno
radila.
if (l < r ) {
int s = (l+r) / 2 ;
MergeSort(l, s);
MergeSort (s + 1 , r);
merge( l , r);
/
Pitanje 19 Točno Broj bodova: 5,00 od 5,00
U funkciji koja stvara povezanu listu dodajte dijelove koji nedostaju kako bi ona ispravno radila.
struct cvor{
int x;
};
struct cvor * p;
for(int i=0;i<n;i++){
if(i==0){
glava->next=NULL;
glava ->x=polje[i];
p=glava;
}else{
tmp=p;
p = p->next;
p->next= NULL ;
p->x=polje[i];
return glava;
/
Pitanje 20 Točno Broj bodova: 10,00 od 10,00
#include <stdio.h>
#include <stdlib.h>
struct oe_ { int x; struct oe_ *sljedeci; };
typedef struct oe_ oe;
int main() {
oe *prvi = NULL, *t;
ubaci( &prvi, 7 );
ubaci( &prvi, 0 );
ubaci( &prvi, 5 );
for (t=prvi; t!=NULL; t=t->sljedeci)
printf("%d",t->x);
return 0;
}
Odgovor: 507
/
Pitanje 21 Točno Broj bodova: 10,00 od 10,00
Uredite redoslijed naredbi kako dobili funkciju 'obilazak' koja bi odgovarala preorder (NLD) obilasku stabla.
printf("%d ",cvor->x);
/
Pitanje 22 Točno Broj bodova: 20,00 od 20,00
Napišite funkciju "void ncvorova(struct cvor *root)" koja će izračunati i na ekran ispisati koliko ima ukupno
čvorova u stablu.
Struktura cvor sastoji se od cjelobrojnog podatka X i pokazivača na lijevi i desni nasljednik (*lijevi, *desni).
Test Got
test1 11
test2 7
test3 2
test4 0
Točno
/
Započeto ponedjeljak, 1. veljače 2021., 18:31
Stanje Završeno
Završeno ponedjeljak, 1. veljače 2021., 19:14
Proteklo vrijeme 43 min 24 s
Ocjena 62,00 od maksimalno 100,00
Točno
Netočno
Točno
Netočno
/
Pitanje 3 Točno Broj bodova: 2,00 od 2,00
Čvor povezane liste ne možemo koristiti u C-u bez korištenja ključne riječi i naredbe typedef.
Točno
Netočno
Ako imamo sortiranu povezanu listu onda ju možemo pretraživati algoritmom binarnog pretraživanja.
Točno
Netočno
Rekurzivno rješenje problema povrh zahtjeva samo jedan osnovni slučaj koji ima direktno rješenje.
Točno
Netočno
/
Pitanje 6 Netočno Broj bodova: 0,00 od 2,00
Svaki algoritam koji je dan kao rekurzivna funkcija ili procedura moze se rijestiti iterativno pomocu reda.
Točno
Netočno
Točno
Netočno
Točno
Netočno
/
Pitanje 9 Točno Broj bodova: 2,00 od 2,00
Točno
Netočno
Točno
Netočno
/
Pitanje 11 Netočno Broj bodova: 0,00 od 4,00
Zadan je dio programa u C-u koji je napisan prema algoritmu binarnog pretraživanja. Napisani su i brojevi
linija. Međutim, u jednoj liniji se nalazi greška. U kojoj?
1. dg = 0;
2. gg = N-1;
3. for (;;) {
4. s = (dg+gg)/2;
5. if (s==x) {
6. printf( "%d Pronadjen! Na %d. poziciji u nizu.\n", x, s );
7. exit( 0 );
8. }
9. if (x<V[s]) gg = s-1;
10. if (x>V[s]) dg = s+1;
11. if (dg>=gg) {
12. printf( "%d nije pronadjen!\n", x );
13. exit( 1 );
14. }
15. }
Odgovor: 10
/
Pitanje 12 Točno Broj bodova: 4,00 od 4,00
e. Kolonu kamiona
Ako je zadana rekurzivna funcija koja računa faktorijele: int fakt( int n ), koliko će biti rekurzivnih
poziva ako ju pozovemo s fakt( 866 )?
Odgovor: 866
/
Pitanje 14 Točno Broj bodova: 4,00 od 4,00
Stablo kod kojeg sve razine moraju biti popunjene, osim zadnje razine koja mora biti popunjena s lijeva na
desno se naziva:
b. Opće stablo
/
Pitanje 15 Točno Broj bodova: 4,00 od 4,00
Neka je zadana procedura void UHRPI(int i) koja uhrpljava čvor na i-tom mjestu prema algoritmu koji
smo učili na predavanju i procedura zamjeni(..) koja zamjenjuje mjesta dva elementa u zadanom nizu V
od N elemenata. NH je broj elemenata hrpe.
1. void HeapSort() {
2. int i;
3. NH = N;
4. for (i=NH/2; i>=0; i--) UHRPI( i );
5. for (i=NH-1; i>=1; i--) {
6. zamjeni( &V[0], &V[i] );
7. NH++;
8. UHRPI( 0 );
9. }}
Međutim ova procedura ima grešku. Napišite u kojoj je liniji greška!
Odgovor: 7
/
Pitanje 16 Djelomično točno Broj bodova: 2,00 od 5,00
int sp;
int capacity;
int* array;
} Stack;
if (s->sp == -1)
printf("Error.Stack underflow.\n");
else {
s->sp = s->sp - 1 ;
return s ;
return -1;
/
Pitanje 17 Djelomično točno Broj bodova: 4,00 od 5,00
U funkciji koja obavlja SEKVENCIJALNO PRETRAŽIVANJE dodajte dijelove koji nedostaju kako bi ona ispravno radila.
int i;
if (V[ i ] == x)
return i;
return -1;
U funkciji za obilazak stabla dodajte dijelove koji nedostaju kako bi ona ispravno radila.
else{
inOrder(root-> left );
printf( root->x );
inOrder(root-> right );
/
Pitanje 19 Djelomično točno Broj bodova: 4,00 od 5,00
U funkciji za obilazak stabla (ne rekurzivna - koristeći stogove) dodajte dijelove koji nedostaju kako bi ona ispravno
radila.
cvor * p = glava;
push(p);
while(!emp()){
p_temp = pop ;
if(p_temp-> right ){
push(p_temp-> right );
if(p_temp-> left ){
push(p_temp-> left );
/
Pitanje 20 Točno Broj bodova: 10,00 od 10,00
Preuredi redoslijed naredbi funkcije brojparnih koja izračunava i vraća kao rezultat broj parnih podataka
u povezanoj listi.
int rez = 0;
oe *t;
if (t->x%2==0) rez++;
return rez;
/
Pitanje 21 Djelomično točno Broj bodova: 5,00 od 10,00
Uredite redoslijed naredbi kako dobili funkciju 'obilazak' koja bi odgovarala preorder (NLD) obilasku stabla.
printf("%d ",cvor->x);
1. 1 / 1 = 100%
2. 1 / 1 = 100%
3. 0 / 1 = 0%
4. 0 / 1 = 0%
5. 0 / 1 = 0%
6. 1 / 1 = 100%
/
Pitanje 22 Netočno Broj bodova: 0,00 od 20,00
Napišite funkciju "void ndesnih(struct cvor *root)" koja će izračunati i na ekran ispisati koliko ima čvorova u
Struktura cvor sastoji se od cjelobrojnog podatka X i pokazivača na lijevi i desni nasljednik (*lijevi, *desni).
1 int count=0;
2 void cvorova(struct cvor* root){
3 if(root==NULL){
4 return;
5 }
6 cvorova(root->lijevi );
7 count++;
8 cvorova(root->desni );
9 }
10 void ndesni(struct cvor* root){
11 if(root==NULL || root->lijevi ==NULL){
12 printf("0");
13 }
14 cvorova(root->desni);
15 printf("%d\n", count);
16 }
Syntax Error(s)
Netočno
/
Započeto ponedjeljak, 1. veljače 2021., 18:31
Stanje Završeno
Završeno ponedjeljak, 1. veljače 2021., 19:16
Proteklo vrijeme 45 min
Ocjena 88,00 od maksimalno 100,00
Točno
Netočno
Točno
Netočno
Čvor povezane liste mora sadržavati podatkovni element tipa int x; u C-u.
Točno
Netočno
Točno
Netočno
Rekurzivno rješenje problema povrh zahtjeva samo jedan osnovni slučaj koji ima direktno rješenje.
Točno
Netočno
Iterativno rješenje uvijek ima veći programski kod u odnosu na rekruzivno rješenje.
Točno
Netočno
Točno
Netočno
Točno
Netočno
Točno
Netočno
2
HeapSort algoritam koji koristi hrpu za sortiranje je brži algoritam za sortiranje i njegova složenost je O( N ).
Točno
Netočno
Zadan je dio programa u C-u koji je napisan prema algoritmu binarnog pretraživanja. Napisani su i brojevi linija.
Međutim, u jednoj liniji se nalazi greška. U kojoj?
1. dg = 0;
2. gg = N-1;
3. for (;;) {
4. s = (dg+gg)/2;
5. if (V[s]==x) {
6. printf( "%d Pronadjen! Na %d. poziciji u nizu.\n", x, s );
7. exit( 0 );
8. }
9. if (x<V[s]) gg = s-1;
10. if (x>V[s]) dg = s+1;
11. if (dg<gg) {
12. printf( "%d nije pronadjen!\n", x );
13. exit( 1 );
14. }
15. }
Odgovor: 11
b. O(log n)
c. O( 1 )
d. O( n )
e. O( n log n )
Ako je zadana rekurzivna funcija koja računa faktorijele: int fakt( int n ), koliko će biti rekurzivnih poziva
ako ju pozovemo s fakt( 194 )?
Odgovor: 194
Pomoću dinamičke strukture koja sadrži vrijednost čvora i pokazivač na sljedeće čvor
Pomoću 3 matrice
Pomoću dinamičke strukture koja koristi vrijednost čvora, i pokazivače ne lijevi i desni nasljednik
Ispravni odgovori su: Pomoću matrice s tri stupca, Pomoću dinamičke strukture koja koristi vrijednost čvora, i
pokazivače ne lijevi i desni nasljednik
Pitanje 15 Točno Broj bodova: 4,00 od 4,00
Neka je zadana procedura void UHRPI(int i) koja uhrpljava čvor na i-tom mjestu prema algoritmu koji smo
učili na predavanju i procedura zamjeni(..) koja zamjenjuje mjesta dva elementa u zadanom nizu V od N
elemenata. NH je broj elemenata hrpe.
1. void HeapSort() {
2. int i;
3. NH = N;
4. for (i=NH/4; i>=0; i--) UHRPI( i );
5. for (i=NH-1; i>=1; i--) {
6. zamjeni( &V[0], &V[i] );
7. NH--;
8. UHRPI( 0 );
9. }}
Međutim ova procedura ima grešku. Napišite u kojoj je liniji greška!
Odgovor: 4
U funkciji koja računa povrh koristeći stog dodajte dijelove koji nedostaju kako bi ona ispravno radila.
int n, m, povrh= 0
Clear(s1); Clear( s2 );
do {
n = Pop(s1);
m = Pop(s2);
if (m == n || n == 1 || m == 0) povrh++;
else {
Push(s1, n - 1);
Push(s2, m - 1);
Push(s1, n - 1);
Push(s2, m );
return povrh;
U funkciji UHRPI koja uhrpljava zadani čvor i dodajte dijelove koji nedostaju kako bi ona ispravno radila.
int largest = i;
int left = 2 * i + 1;
int right = 2
* i + 2;
largest = left ;
largest = right;
if (largest != i) {
heapify(arr, n, largest);
}
Pitanje 18 Točno Broj bodova: 5,00 od 5,00
U funkciji koja obavlja SEKVENCIJALNO PRETRAŽIVANJE dodajte dijelove koji nedostaju kako bi ona ispravno radila.
int sekv_pret(int V
int i;
if (V[ i ] == x)
return i;
return -1;
U funkciji koja briše duplikate (pretpostavljamo da je lista sortirana) iz povezane liste dodajte dijelove koji nedostaju kako bi
ona ispravno radila.
struct element{
int X;
element * next;
};
element *p = glava;
while (p->next) {
if (p->X == p->next->X
#include <stdio.h>
#include <stdlib.h>
int main() {
oe *p1 = NULL, *p2=NULL, *t1;
ubaci( &p1, 1 );
ubaci( &p2, 2 );
ubaci( &p1, 3 );
ubaci( &p2, 4 );
ubaci( &p1, 5 );
ubaci( &p2, 6 );
for (t1=p2; t1!=NULL; t1=t1->sljedeci)
printf("%d",t1->x);
return 0;
}
Odgovor: 642
Uredite redoslijed naredbi kako dobili funkciju 'obilazak' koja bi odgovarala preorder (NLD) obilasku stabla.
printf("%d ",cvor->x);
Napišite funkciju "void maxlevel(struct cvor *root)" koja će izračunati i na ekran ispisati najveću razinu zadanog
Struktura cvor sastoji se od cjelobrojnog podatka X i pokazivača na lijevi i desni nasljednik (*lijevi, *desni).
Test Got
test1 4
test2 8
test3 1
test4 0
Djelomično točno
Točno
Netočno
Točno
Netočno
Točno
Netočno
/
Pitanje 4 Netočno Broj bodova: 0,00 od 2,00
Ako imamo dvostruko povezanu listu onda možemo pristupiti svakom podatku trenutačno O(1).
Točno
Netočno
b
Složenost rekurzivne funkcije povrh( a, b ) jeste O( a ).
Točno
Netočno
Rekurzivno rješenje problema povrh zahtjeva samo jedan osnovni slučaj koji ima direktno rješenje.
Točno
Netočno
/
Pitanje 7 Točno Broj bodova: 2,00 od 2,00
Točno
Netočno
Točno
Netočno
Točno
Netočno
/
Pitanje 10 Netočno Broj bodova: 0,00 od 2,00
Točno
Netočno
Zadan je dio programa u C-u koji je napisan prema algoritmu binarnog pretraživanja. Napisani su i brojevi linija. Međutim,
u jednoj liniji se nalazi greška. U kojoj?
1. dg = 0;
2. gg = N-1;
3. for (;;) {
4. s = (dg+gg)/2;
5. if (V[s]==x) {
6. printf( "%d Pronadjen! Na %d. poziciji u nizu.\n", x, s );
7. exit( 0 );
8. }
9. if (x>V[s]) gg = s-1;
10. if (x>V[s]) dg = s+1;
11. if (dg>=gg) {
12. printf( "%d nije pronadjen!\n", x );
13. exit( 1 );
14. }
15. }
Odgovor:
/
Pitanje 12 Točno Broj bodova: 4,00 od 4,00
a. Kolonu kamiona
Ako je zadana rekurzivna funcija koja računa faktorijele: int fakt( int n ), koliko će biti rekurzivnih poziva ako ju
pozovemo s fakt( 801 )?
Odgovor: 801
/
Pitanje 14 Djelomično točno Broj bodova: 2,00 od 4,00
NLD Preorder
DLN Inorder
LDN Postorder
Neka je zadana procedura void UHRPI(int i) koja uhrpljava čvor na i-tom mjestu prema algoritmu koji smo učili na
predavanju i procedura zamjeni(..) koja zamjenjuje mjesta dva elementa u zadanom nizu V od N elemenata. NH je broj
elemenata hrpe.
1. void HeapSort() {
2. int i;
3. NH = N;
4. for (i=NH/2, i>=0, i--) UHRPI( i );
5. for (i=NH-1, i>=1, i--) {
6. zamjeni( &V[0], &V[i] );
7. NH--;
8. UHRPI( 0 );
9. }}
Međutim ova procedura ima grešku. Napišite u kojoj je liniji greška!
Odgovor: 5
/
Pitanje 16 Djelomično točno Broj bodova: 4,00 od 5,00
U funkciji koja sortira povezanu listu dodajte dijelove koji nedostaju kako bi ona ispravno radila.
ppopis *temp1;
temp1 = new ppopis;
ppopis *temp2;
temp2 = new ppopis;
int temp=0;
temp1->broj = temp2->broj;
temp2->broj=temp;
}
}
}
}
/
Pitanje 17 Djelomično točno Broj bodova: 3,00 od 5,00
U funkciji koja računa povrh koristeći stog dodajte dijelove koji nedostaju kako bi ona ispravno radila.
int n, m, povrh= 0 ;
Clear(s1); Clear( s2 );
do {
n = Pop(s1);
m = Pop(s2);
if (m == n || n == 1 && m == 0) povrh++;
else {
Push(s1, n - 1);
Push(s2, m - 1);
Push(s1, n - 1);
Push(s2, m-1 );
return povrh;
U rekurzivnoj funkciji MERGE-SORT koja sortira podatke niza dodajte dijelove koji nedostaju kako bi ona ispravno radila.
if (l < r ) {
int s = (l+r) / 2 ;
MergeSort(l, s);
MergeSort (s + 1 , r);
merge( s , r);
/
Pitanje 19 Djelomično točno Broj bodova: 3,00 od 5,00
U funkciji koja stvara povezanu listu dodajte dijelove koji nedostaju kako bi ona ispravno radila.
struct cvor{
int x;
};
struct cvor * p;
for(int i=0;i<n;i++){
if(i==0){
glava->next=NULL;
glava ->x=polje[i];
p=glava;
}else{
tmp=p;
p = p->next;
p->next= NULL ;
p->x=polje[i];
return glava;
/
Pitanje 20 Točno Broj bodova: 10,00 od 10,00
#include <stdio.h>
#include <stdlib.h>
struct oe_ { int x; struct oe_ *sljedeci; };
typedef struct oe_ oe;
int main() {
oe *prvi = NULL, *t;
ubaci( &prvi, 7 );
ubaci( &prvi, 0 );
ubaci( &prvi, 5 );
for (t=prvi; t!=NULL; t=t->sljedeci)
printf("%d",t->x);
return 0;
}
Odgovor: 507
/
Pitanje 21 Točno Broj bodova: 10,00 od 10,00
Uredite redoslijed naredbi kako dobili funkciju 'obilazak' koja bi odgovarala preorder (NLD) obilasku stabla.
printf("%d ",cvor->x);
/
Pitanje 22 Netočno Broj bodova: 0,00 od 20,00
Napišite funkciju "void ndesnih(struct cvor *root)" koja će izračunati i na ekran ispisati koliko ima čvorova u desnom
Struktura cvor sastoji se od cjelobrojnog podatka X i pokazivača na lijevi i desni nasljednik (*lijevi, *desni).
Syntax Error(s)
Netočno
/
Broj bodova za ovaj odgovor: 0,00/20,00.
/
Započeto ponedjeljak, 1. veljače 2021., 18:30
Stanje Završeno
Završeno ponedjeljak, 1. veljače 2021., 19:15
Proteklo vrijeme 45 min
Ocjena 92,20 od maksimalno 100,00
Točno
Netočno
Točno
Netočno
U C-u moramo koristiti ključnu riječ struct kako bi de nirali čvor povezane liste.
Točno
Netočno
/
Pitanje 4 Točno Broj bodova: 2,00 od 2,00
Povezane liste uz svaki podatak koriste i dodatnu memorijsku adresu kako bi se znalo gdje je sljedeći
podatak.
Točno
Netočno
Točno
Netočno
Točno
Netočno
/
Pitanje 7 Točno Broj bodova: 2,00 od 2,00
Točno
Netočno
Točno
Netočno
Točno
Netočno
/
Pitanje 10 Točno Broj bodova: 2,00 od 2,00
Točno
Netočno
Zadan je dio programa u C-u koji je napisan prema algoritmu binarnog pretraživanja. Napisani su i brojevi
linija. Međutim, u jednoj liniji se nalazi greška. U kojoj?
1. dg = 0;
2. gg = N-1;
3. for (;;) {
4. s = dg+gg/2;
5. if (V[s]==x) {
6. printf( "%d Pronadjen! Na %d. poziciji u nizu.\n", x, s );
7. exit( 0 );
8. }
9. if (x<V[s]) gg = s-1;
10. if (x>V[s]) dg = s+1;
11. if (dg>=gg) {
12. printf( "%d nije pronadjen!\n", x );
13. exit( 1 );
14. }
15. }
Odgovor: 4
/
Pitanje 12 Djelomično točno Broj bodova: 3,20 od 4,00
Neka lista ima n podataka i neka ima samo pokazivač na prvi podatak.
Ako je zadana rekurzivna funcija koja računa faktorijele: int fakt( int n ), koliko će biti rekurzivnih
poziva ako ju pozovemo s fakt( 893 )?
Odgovor: 893
/
Pitanje 14 Točno Broj bodova: 4,00 od 4,00
NLD Preorder
LDN Postorder
LND Inorder
Ispravan odgovor je: NLD → Preorder, LDN → Postorder, DLN → Takav obilazak ne postoji, LND → Inorder
Neka je zadana procedura void UHRPI(int i) koja uhrpljava čvor na i-tom mjestu prema algoritmu koji
smo učili na predavanju i procedura zamjeni(..) koja zamjenjuje mjesta dva elementa u zadanom nizu V
od N elemenata. NH je broj elemenata hrpe.
1. void HeapSort() {
2. int i;
3. NH = N;
4. for (i=NH/2; i>=0; i--) UHRPI( i );
5. for (i=NH-1; i>=1; i--) {
6. zamjeni( &V[1], &V[i] );
7. NH--;
8. UHRPI( 0 );
9. }}
Međutim ova procedura ima grešku. Napišite u kojoj je liniji greška!
Odgovor: 6
/
Pitanje 16 Točno Broj bodova: 5,00 od 5,00
U funkciji HEAP SORT koja sortira podatke koristeći hrpu dodajte dijelove koji nedostaju kako bi ona ispravno radila.
U rekurzivnoj funkciji MERGE-SORT koja sortira podatke niza dodajte dijelove koji nedostaju kako bi ona ispravno radila.
if (l < r ) {
int s = (l+r) / 2 ;
MergeSort(l, s);
MergeSort (s + 1 , r);
/
Pitanje 18 Djelomično točno Broj bodova: 4,00 od 5,00
Dana je funkcija koja generira slučajni niz sastavljen od nula i jedinica, tako da se ne mogu pojaviti više od 3 uzastopne
jedinice. Popunite polja koja nedostaju tako da programski kod radi ispravno.
int uzast1=0;
a[i] = rand()% 2 ;
if (a[i] == 1) uzast1++;
if (uzast1> 2 ) {
a[i] = 0 ;
uzast1 = 0 ;
/
Pitanje 19 Djelomično točno Broj bodova: 4,00 od 5,00
U funkciji koja stvara povezanu listu dodajte dijelove koji nedostaju kako bi ona ispravno radila.
struct cvor{
int x;
};
struct cvor * p;
for(int i=0;i<n;i++){
if(i==0){
glava->next=NULL;
glava ->x=polje[i];
p=glava;
}else{
tmp=p;
p = p->next;
p->next= tmp ;
p->x=polje[i];
return glava;
/
Pitanje 20 Točno Broj bodova: 10,00 od 10,00
Preuredi redoslijed naredbi funkcije ubaci koja ubacuje novi čvor na početak povezane liste.
novi->x = novix;
novi->sljedeci = *t;
*t = novi;
Uredite redoslijed naredbi kako dobili funkciju 'obilazak' koja bi odgovarala inorder (LND) obilasku stabla.
printf("%d ",cvor->x);
/
Pitanje 22 Djelomično točno Broj bodova: 16,00 od 20,00
Napisati funkciju "void pretraziZnamenku( oe *prvi, int n )" koja će iszračunati i ispisati koliko ima elemenata
u povezanoj listi koji imaju bilo koju znamenku jednaku jednoznamenkastom parametru n.
Osnovni element liste oe se sastoji od cjelobrojnog podatka 'x', te pokazivača na isti takav osnovni element 'sljedeci'.
Npr. ako je povezana lista sadrži vrijednosti: 1,72,21,5,624 i n=2, onda funkcija treba ispisati 3, zato što u 72, 21 i 624
imamo znamenku 2.
test1 1, 8 5 5
Djelomično točno
/
Započeto ponedjeljak, 1. veljače 2021., 18:32
Stanje Završeno
Završeno ponedjeljak, 1. veljače 2021., 19:17
Proteklo vrijeme 45 min
Ocjena 62,67 od maksimalno 100,00
Točno
Netočno
Točno
Netočno
Točno
Netočno
/
Pitanje 4 Točno Broj bodova: 2,00 od 2,00
Točno
Netočno
Rekurzivne funkcije ili procedure mogu pozivati samu sebe samo jednom.
Točno
Netočno
Svaki rekurzivni problem bi se trebao moći rede nirati pomoću jednog ili više manjih podproblema koji su po
prirodi identični, ali manji po veličini.
Točno
Netočno
/
Pitanje 7 Točno Broj bodova: 2,00 od 2,00
Točno
Netočno
Točno
Netočno
2
HeapSort algoritam koji koristi hrpu za sortiranje je brži algoritam za sortiranje i njegova složenost je O( N ).
Točno
Netočno
/
Pitanje 10 Točno Broj bodova: 2,00 od 2,00
Novi čvor se uvijek dodaje kao zadnji element u hrpu i tamo ostaje.
Točno
Netočno
Zadan je dio programa u C-u koji je napisan prema algoritmu binarnog pretraživanja. Napisani su i brojevi
linija. Međutim, u jednoj liniji se nalazi greška. U kojoj?
1. dg = 0;
2. gg = N-1;
3. for (;;) {
4. s = (dg+gg)/2;
5. if (V[s]==x) {
6. printf( "%d Pronadjen! Na %d. poziciji u nizu.\n", x, s );
7. exit( 0 );
8. }
9. if (x<V[s]) gg = s+1;
10. if (x>V[s]) dg = s+1;
11. if (dg>=gg) {
12. printf( "%d nije pronadjen!\n", x );
13. exit( 1 );
14. }
15. }
Odgovor: 9
/
Pitanje 12 Djelomično točno Broj bodova: 1,33 od 4,00
Kod problema povrh(a,b), ako je a=1958, koliko treba biti b, da bi izvršavanje ove funkcije trajalo najduže?
Odgovor: 979
Stablo kod kojeg sve razine moraju biti popunjene, osim zadnje razine koja mora biti popunjena s lijeva na
desno se naziva:
d. Opće stablo
/
Pitanje 15 Točno Broj bodova: 4,00 od 4,00
Neka je zadana procedura void UHRPI(int i) koja uhrpljava čvor na i-tom mjestu prema algoritmu koji
smo učili na predavanju i procedura zamjeni(..) koja zamjenjuje mjesta dva elementa u zadanom nizu V od
N elemenata. NH je broj elemenata hrpe.
1. void HeapSort() {
2. int i;
3. NH = N;
4. for (i=NH/2, i>=0, i--) UHRPI( i );
5. for (i=NH-1, i>=1, i--) {
6. zamjeni( &V[0], &V[i] );
7. NH--;
8. UHRPI( 0 );
9. }}
Međutim ova procedura ima grešku. Napišite u kojoj je liniji greška!
Odgovor: 4
/
Pitanje 16 Djelomično točno Broj bodova: 4,00 od 5,00
U funkciji koja obavlja BINARNO PRETRAŽIVANJE dodajte dijelove koji nedostaju kako bi ona ispravno radila.
for (;;) {
mid = (l + r) / 2 ;
/
Pitanje 17 Djelomično točno Broj bodova: 3,00 od 5,00
U funkciji koja briše duplikate (pretpostavljamo da je lista sortirana) iz povezane liste dodajte dijelove koji nedostaju kako
bi ona ispravno radila.
struct element{
int X;
element * next;
};
element *p = glava;
while (p->next) {
if (p->X == p->next->X ) {
tmp = p->next->next ;
free( p->next );
p->next=tmp ;
}else {
p=p->next ;
/
Pitanje 18 Djelomično točno Broj bodova: 4,00 od 5,00
int sp;
int capacity;
int* array;
} Stack;
printf("Error.Stack overflow.\n");
else {
s->sp += 1 ;
s->array[s->sp] = x ;
/
Pitanje 19 Djelomično točno Broj bodova: 3,00 od 5,00
U funkciji koja računa povrh koristeći stog dodajte dijelove koji nedostaju kako bi ona ispravno radila.
int n, m, povrh= 1 ;
Clear(s1); Clear( s2 );
do {
n = Pop(s1);
m = Pop(s2);
if (m == n || n == 1 || m == 0) povrh++;
else {
Push(s1, n - 1);
Push(s2, m - 1);
Push(s1, n - 1);
Push(s2, m-1 );
return povrh;
/
Pitanje 20 Djelomično točno Broj bodova: 6,67 od 10,00
Preuredi redoslijed naredbi funkcije arsr koja izračunava i vraća kao rezultat aritmetičku sredinu povezane
liste.
if (pr==NULL) return 0;
return rez/n;
1. 1 / 1 = 100%
2. 0 / 1 = 0%
3. 0 / 1 = 0%
4. 1 / 1 = 100%
5. 1 / 1 = 100%
6. 1 / 1 = 100%
/
Pitanje 21 Djelomično točno Broj bodova: 6,67 od 10,00
Uredite redoslijed naredbi kako dobili funkciju 'obilazak' koja bi odgovarala inorder (LND) obilasku stabla.
printf("%d ",cvor->x);
1. 1 / 1 = 100%
2. 1 / 1 = 100%
3. 1 / 1 = 100%
4. 0 / 1 = 0%
5. 0 / 1 = 0%
6. 1 / 1 = 100%
/
Pitanje 22 Netočno Broj bodova: 0,00 od 20,00
Napiši rekurzivnu funkciju "void znakovi(int n)" koja će za n=6 ispisati sljedeći uzorak:
******
*****
****
***
**
**
***
****
*****
******
Syntax Error(s)
Netočno
Točno
Netočno
Točno
Netočno
Ako povezana lista ima pokazivače na prvog i na zadnjeg, onda možemo trenutačno (u vremenu O(1)) obrisati
zadnji podatak.
Točno
Netočno
/
Pitanje 4 Točno Broj bodova: 2,00 od 2,00
Povezana lista se može obići unatrag (od zadnjeg elementa do prvog) u linearnom vremenu O( n ).
Točno
Netočno
Točno
Netočno
Točno
Netočno
/
Pitanje 7 Točno Broj bodova: 2,00 od 2,00
Točno
Netočno
Točno
Netočno
Točno
Netočno
/
Pitanje 10 Netočno Broj bodova: 0,00 od 2,00
Točno
Netočno
/
Pitanje 11 Točno Broj bodova: 4,00 od 4,00
Zadan je dio programa u C-u koji je napisan prema algoritmu binarnog pretraživanja. Napisani su i brojevi
linija. Međutim, u jednoj liniji se nalazi greška. U kojoj?
1. dg = 0;
2. gg = N-1;
3. for (;;) {
4. s = (dg+gg)/2;
5. if (s==x) {
6. printf( "%d Pronadjen! Na %d. poziciji u nizu.\n", x, s );
7. exit( 0 );
8. }
9. if (x<V[s]) gg = s-1;
10. if (x>V[s]) dg = s+1;
11. if (dg>=gg) {
12. printf( "%d nije pronadjen!\n", x );
13. exit( 1 );
14. }
15. }
Odgovor: 5
/
Pitanje 12 Točno Broj bodova: 4,00 od 4,00
Neka lista ima n podataka i neka ima samo pokazivač na prvi podatak.
Ispravan odgovor je: Dodavanje novog podatka na početak povezane liste. → O( 1 ), Dodavanje novog podatka u
sredinu povezane liste. → O( n ), Obilazak povezane liste. → O( n ), Pristup prvom elementu. → O( 1 ), Brisanje prvog
podatka u povezanoj listi. → O( 1 )
Kod problema povrh(a,b), ako je a=720, koliko treba biti b, da bi izvršavanje ove funkcije trajalo najduže?
Odgovor: 360
/
Pitanje 14 Točno Broj bodova: 4,00 od 4,00
LND Inorder
NLD Preorder
LDN Postorder
Ispravan odgovor je: LND → Inorder, NLD → Preorder, DLN → Takav obilazak ne postoji, LDN → Postorder
Neka je zadana procedura void UHRPI(int i) koja uhrpljava čvor na i-tom mjestu prema algoritmu koji smo učili
na predavanju i procedura zamjeni(..) koja zamjenjuje mjesta dva elementa u zadanom nizu V od N
elemenata. NH je broj elemenata hrpe.
1. void HeapSort() {
2. int i;
3. NH = N;
4. for (i=NH/2; i>=0; i--) UHRPI( i );
5. for (i=NH-1; i>=1; i--) {
6. zamjeni( &V[i], &V[i-1] );
7. NH--;
8. UHRPI( 0 );
9. }}
Međutim ova procedura ima grešku. Napišite u kojoj je liniji greška!
Odgovor: 6
/
Pitanje 16 Djelomično točno Broj bodova: 2,00 od 5,00
U funkciji koja obavlja SELECT-SORT dodajte dijelove koji nedostaju kako bi ona ispravno radila.
int i, j;
V[i] = V[j];
V[j] = temp ;
/
Pitanje 17 Točno Broj bodova: 5,00 od 5,00
U funkciji koja računa povrh koristeći stog dodajte dijelove koji nedostaju kako bi ona ispravno radila.
int n, m, povrh= 0 ;
Clear(s1); Clear( s2 );
do {
n = Pop(s1);
m = Pop(s2);
if (m == n || n == 1 || m == 0) povrh++;
else {
Push(s1, n - 1);
Push(s2, m - 1);
Push(s1, n - 1);
Push(s2, m );
return povrh;
/
Pitanje 18 Točno Broj bodova: 5,00 od 5,00
U funkciji koja obavlja BINARNO PRETRAŽIVANJE dodajte dijelove koji nedostaju kako bi ona ispravno radila.
for (;;) {
mid = (l + r) / 2 ;
U funkciji HEAP SORT koja sortira podatke koristeći hrpu dodajte dijelove koji nedostaju kako bi ona ispravno radila.
/
Pitanje 20 Točno Broj bodova: 10,00 od 10,00
#include <stdio.h>
#include <stdlib.h>
int main() {
oe *p1 = NULL, *p2=NULL, *t1, *t2;
ubaci( &p1, 1 );
ubaci( &p2, 2 );
ubaci( &p1, 3 );
ubaci( &p2, 4 );
ubaci( &p1, 5 );
ubaci( &p2, 6 );
for (t1=p1, t2=p2; t1!=NULL; t1=t1->sljedeci)
printf("%d%d",t1->x, t2->x);
return 0;
}
Odgovor: 563616
/
Pitanje 21 Točno Broj bodova: 10,00 od 10,00
Uredite redoslijed naredbi kako dobili funkciju 'obilazak' koja bi odgovarala inorder (LND) obilasku stabla.
printf("%d ",cvor->x);
/
Pitanje 22 Netočno Broj bodova: 0,00 od 20,00
Napisati rekurzivnu funkciju "int pronadji(struct cvor *root, int n)" koja će pronaći (ako postoji) traženu
vrijednost n u poredanom binarnom stablu. Ako cvor sa trazenom vrijednoscu postoji funkcija treba vratiti vrijednost 1, a
ukoliko ne postoji 0. Stablo je predstavljeno strukturom cvor koja sadrzi cjelobrojni podatak X te pokazivače na lijevog
nasljednika lijevi i pokazivača na desnog nasljednika desni;
while (root!=NULL)
{
if(n > root->X)
{
return pronadji(root->desni, n);
}
else{
return 1;
}
}
Syntax Error(s)
Netočno