Professional Documents
Culture Documents
PII - A12 - Stabla (2. Dio)
PII - A12 - Stabla (2. Dio)
2016.
A12 STABLA BINARNOG PRETRAŽIVANJA
Napisati program u kojem treba:
• definisati tip CVOR kojim se reprezentuje čvor stabla binarnog pretraživanja
(informacioni sadržaj treba da bude cijeli broj),
• definisati funkciju koja dodaje novi čvor u stablo,
• definisati funkciju koja omogućava pretraživanje stabla,
• definisati funkciju koja pronalazi najmanji čvor u stablu,
• definisati funkciju koja pronalazi najveći čvor u stablu,
• definisati funkciju koja briše zadati čvor iz stabla,
• definisati funkciju koja briše stablo,
• definisati funkciju koja ispisuje sadržaj stabla u preorder redoslijedu obilaska,
• definisati funkciju koja ispisuje sadržaj stabla u inorder redoslijedu obilaska,
• definisati funkciju koja ispisuje sadržaj stabla u postorder redoslijedu obilaska,
• u glavnom programu ilustrovati rad sa stablom binarnog pretraživanja tj. definisanim
funkcijama.
typedef struct cvor { int info; struct cvor *lijevi, *desni; } CVOR;
printf("Preorder:"); pisi_preorder(korijen);
printf("\nInorder:"); pisi_inorder(korijen);
printf("\nPostorder:"); pisi_postorder(korijen);
typedef struct cvor { int info; struct cvor *lijevi, *desni; } CVOR;
int main() {
int niz[] = { 50, 30, 40, 20, 10, 50, 70, 60, 80, 90 },
n = sizeof(niz) / sizeof(int);
sortiraj(niz, n);
printf("Sortirano:");
for (int i = 0; i < n; i++)
printf(" %d", niz[i]); Sortirano: 10 20 30 40 50 50 60 70 80 90
return 0;
}
Stabla (1. dio) 8
A12 STABLA BINARNOG PRETRAŽIVANJA
Napisati program u kojem treba:
• definisati tip ARTIKAL kojim se reprezentuje artikal čiji su atributi: šifra (cijeli broj u
opsegu 00000-99999, koji se uvijek ispisuje kao 5-cifreni podatak), naziv, količina i
cijena,
• definisati tip CVOR kojim se reprezentuje čvor stabla binarnog pretraživanja,
• definisati funkciju koja dodaje podatke o novom artiklu u stablo tako da je kriterijum pri
dodavanju novog čvora u stablo šifra artikla,
• definisati funkciju koja omogućava pretraživanje stabla po šifri artikla,
• definisati funkciju koja formatirano ispisuje podatke o svim artiklima,
• definisati funkciju koja omogućava brisanje podataka o artiklu po šifri,
• definisati funkciju koja briše stablo,
• definisati funkciju koja omogućava učitavanje podataka o artiklu,
• u glavnom programu prikazivati meni prema kojem korisnik može da vrši:
dodavanje podataka o novom artiklu,
ažuriranje podataka,
brisanje podataka,
prikaz podataka o svim artiklima,
pretraživanje podataka po šifri.
typedef struct { int sifra; char naziv[21]; double kol, cijena; } ARTIKAL;
typedef struct cvor {ARTIKAL art; struct cvor *lijevi, *desni; } CVOR;
static int rb;
korijen->art.kol*korijen->art.cijena);
pisi_inorder(korijen->desni);
}
}