Citat: |
Implementirajte a.t.p. STACK pomoću pointera i napišite potprogram koji logički izraz iz infix oblika prebacuje u prefix oblik. Problem trebate riješiti pomoću stoga. Ulazni podaci: string koji predstavlja logički izraz u infix obliku Izlazni podaci: prikaz istog izraza u prefix obliku Na primjer, za ulazne podatke: A|B&(C^E|D) treba ispisati: |A&B|^CED Napomena: &=AND, |=OR, ^=XOR, -=NOT; obratite pažnju na prioritete |
michelangelo (napisa): |
da ne otvaram novu temu:
imam problem kod implementacije BTREE pomoću polja, točnije kod funkcije node CREATE(labeltype l, BTREE TL, BTREE TR, BTREE *T) ne dolazim na ideju za to. pa ako neko može dat hint barem, bila bi zahvalna ![]() |
michelangelo (napisa): |
tnx. mislim da sam skopčala. još jedno pitanje zadatak mi je stvorit novo stablo koje se sastoji samo od korijenskog čvora, koji mora dobiti oznaku c. dal je ovaj kod dobar za to?
void make_new(BTREE *B, labeltype c) { BTREE Br,Bl; MAKE_NULL(&Br); MAKE_NULL(&Bl); node i=CREATE(c,Br,Bl,&B); } |
CROmpir (napisa): |
Imam jedno pitanje,
Kako u atp. BTREE, definirati LAMBDA?? ![]() i kako implementirati PARENT funkciju... hvala |
pravipurger (napisa): |
1. Kada implementiram LIST preko pointera u zadaći da li trebam napisati funkciju PREVIOUS() za koju skripta kaže da je neefikasna, ali dz kaže "potrebno napraviti sve funkcije koje su navedene kod definicije tog atp-a"?
2. Da li kad mi ćelija sadrži koeficijent, eksponent i pointer trebam pisati dvije funckije RETRIEVE1 i RETRIEVE2, jednu koja vraća koef, drugu koja vraća exp ili jednu koja će vraćati nešto drugo? |
CROmpir (napisa): |
Moze li mi netko pomoci oko implementacije funkcije PARENT u BTREE a.t.p-u pomocu pointera... Ne kuzim kako da to napravim... ![]() U skripti sugerira da dodamo jos jedno celiju pointera na parent? I smijemo li to koristiti s obzirom da vise CREATE nije onakakva funkcija kakva bi trebala biti imala bi jos jedan parametar ako se ne varam... Ima li mozda nekakvu ideju ili moze bilo kakva pomoc... |
Kod: |
node CREATE(labeltype l, BTREE TL, BTREE TR, BTREE *Tptr){
*Tptr=(celltype *)malloc(sizeof(celltype)); (*Tptr)->label=l; (*Tptr)->leftchild=TL; (*Tptr)->rightchild=TR; return (*Tptr); } node INSERT_LEFT_CHILD ( labeltype l, node i, BTREE *T){ node novi; novi=CREATE(l,LAMBDA,LAMBDA,T); i->leftchild=novi; return (i->leftchild); } node INSERT_RIGHT_CHILD ( labeltype l, node i, BTREE *T){ node novi; novi=CREATE(l,LAMBDA,LAMBDA,T); i->rightchild=novi; return (i->rightchild); } |
CROmpir (napisa): | ||
Moze li mi netko pomoci oko nacina unosa BINARNOG STABLA...
Bio bih mu jako zahvalan posto me to jako muci... I imam pitanje u vezi implementacije, jel ovo u redu??
|
output generated using printer-friendly topic mod. Vremenska zona: GMT + 01:00.