Search
 
 
  Engleski
 
 
 
Open in this window (click to change)
Forum@DeGiorgi: Početna
Forum za podršku nastavi na PMF-MO
Login Registracija FAQ Smajlići Članstvo Pretražnik Forum@DeGiorgi: Početna

2 zad (zadatak)
WWW:

Moja sarma
 
Započnite novu temu   Odgovorite na temu   printer-friendly view    Forum@DeGiorgi: Početna -> Kolegiji 2. godine -> Strukture podataka i algoritmi
Prethodna tema :: Sljedeća tema  
Autor/ica Poruka
charlotte
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 25. 04. 2006. (14:30:51)
Postovi: (1E)16
Sarma = la pohva - posuda
= 2 - 0

PostPostano: 11:26 čet, 23. 11. 2006    Naslov: 2 zad Citirajte i odgovorite

Hej! Rjesavala sam zadatke koji su stavljeni za vjezbu za kolokvij i dosta toga mi nije jasno pa bi zamolila za pomoc kod ova 2 zad:
1. Zadano je binarno stablo u kojem svaki unutrasnji cvor ima oba djeteta. Neka je L1 suma duljina svih puteva od korijena do nekog lista, L2 suma duljina svih puteva od korijena do nekog unutrasnjeg cvora. Neka je n broj listova. Pokazite da tada vrijedi: L1=L2+2(n-1).
Probala sam to pokazati preko mat indukcije i ako uzmem za bazu stablo koje ima samo korijen dobivam L1=0 L2=0 n=0 i 0=-2?
Drugi zadatak je Napisite fju void dvoje(BTREE T) koja ispisuje oznake svih cvorova bin stabla koji imaju tocno dvoje djece.
Nisam sigurna jel to moze ovako:
void PREORDER (node i,BTREE T){
node c;
if(leftchild(i,T)!=lambda&&rightchild(i,T)!=lambda) printf("...",label(i,T));
c=leftchild(i,T);
while(c!=lambda){
PREORDER(c,T);
c=rightchild;
}
}
void dvoje(BTREE T){
node c;
c=root(T);
PREORDER(c,T);
}
Hvala na pomoci!
Hej! Rjesavala sam zadatke koji su stavljeni za vjezbu za kolokvij i dosta toga mi nije jasno pa bi zamolila za pomoc kod ova 2 zad:
1. Zadano je binarno stablo u kojem svaki unutrasnji cvor ima oba djeteta. Neka je L1 suma duljina svih puteva od korijena do nekog lista, L2 suma duljina svih puteva od korijena do nekog unutrasnjeg cvora. Neka je n broj listova. Pokazite da tada vrijedi: L1=L2+2(n-1).
Probala sam to pokazati preko mat indukcije i ako uzmem za bazu stablo koje ima samo korijen dobivam L1=0 L2=0 n=0 i 0=-2?
Drugi zadatak je Napisite fju void dvoje(BTREE T) koja ispisuje oznake svih cvorova bin stabla koji imaju tocno dvoje djece.
Nisam sigurna jel to moze ovako:
void PREORDER (node i,BTREE T){
node c;
if(leftchild(i,T)!=lambda&&rightchild(i,T)!=lambda) printf("...",label(i,T));
c=leftchild(i,T);
while(c!=lambda){
PREORDER(c,T);
c=rightchild;
}
}
void dvoje(BTREE T){
node c;
c=root(T);
PREORDER(c,T);
}
Hvala na pomoci!


[Vrh]
Korisnički profil Pošaljite privatnu poruku
Gost






PostPostano: 12:50 čet, 23. 11. 2006    Naslov: Citirajte i odgovorite

prvi zadatak imas u biljeznici od prosle godine sigurno, ove godine ne znam da li se radilo.
prvi zadatak imas u biljeznici od prosle godine sigurno, ove godine ne znam da li se radilo.


[Vrh]
GauSs_
Moderator
Moderator


Pridružen/a: 28. 01. 2004. (21:01:17)
Postovi: (53C)16
Spol: muško
Sarma = la pohva - posuda
72 = 110 - 38
Lokacija: 231

PostPostano: 13:09 čet, 23. 11. 2006    Naslov: Citirajte i odgovorite

2. zad.
[code:1]
// preorder ispis
void dvoje(BTREE T){

if(T==NULL) return;
if( (LEFT_CHILD(T)!=lambda && RIGHT_CHILD(T)!=lambda ){
printf("%c ", LABEL(T));
}
dvoje(LEFT_CHILD(T));
dvoje(RIGHT_CHILD(T));
}
[/code:1]
2. zad.
Kod:

// preorder ispis
void dvoje(BTREE T){
   
   if(T==NULL) return;
   if( (LEFT_CHILD(T)!=lambda && RIGHT_CHILD(T)!=lambda ){
     printf("%c ", LABEL(T));
   }
   dvoje(LEFT_CHILD(T));
   dvoje(RIGHT_CHILD(T));
}



_________________
The purpose of life is to end
Malo sam lose volje...

Prosle su godine kolokviji bili laksi, zar ne?
[Vrh]
Korisnički profil Pošaljite privatnu poruku Posjetite Web stranice
vsego
Site Admin
Site Admin


Pridružen/a: 06. 10. 2002. (22:07:09)
Postovi: (3562)16
Spol: zombi
Sarma = la pohva - posuda
854 = 1068 - 214
Lokacija: /sbin/init

PostPostano: 13:32 čet, 23. 11. 2006    Naslov: Citirajte i odgovorite

Sitna izmjena, u smjeru ATP-izacije...

[code:1]// preorder ispis
void dvoje(BTREE T){
if(EMPTY(T)) return;
if( (LEFT_CHILD(T)!=LAMBDA && RIGHT_CHILD(T)!=LAMBDA ){
printf("%c ", LABEL(ROOT(T), T));
}
dvoje(LEFT_CHILD(T));
dvoje(RIGHT_CHILD(T));
}[/code:1]

;)

Prvi zadatak... ako stablo ima samo korijen, onda je on i list, pa je n=1 a ne nula. ;)
Sitna izmjena, u smjeru ATP-izacije...

Kod:
// preorder ispis
void dvoje(BTREE T){
   if(EMPTY(T)) return;
   if( (LEFT_CHILD(T)!=LAMBDA && RIGHT_CHILD(T)!=LAMBDA ){
     printf("%c ", LABEL(ROOT(T), T));
   }
   dvoje(LEFT_CHILD(T));
   dvoje(RIGHT_CHILD(T));
}


Wink

Prvi zadatak... ako stablo ima samo korijen, onda je on i list, pa je n=1 a ne nula. Wink



_________________
U pravilu ignoriram pitanja u krivim topicima i kodove koji nisu u [code]...[/code] blokovima.
Takodjer, OBJASNITE sto vas muci! "Sto mi je krivo?", bez opisa u cemu je problem, rijetko ce zadobiti moju paznju.
Drzim prodike
[Vrh]
Korisnički profil Pošaljite privatnu poruku
charlotte
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 25. 04. 2006. (14:30:51)
Postovi: (1E)16
Sarma = la pohva - posuda
= 2 - 0

PostPostano: 14:06 čet, 23. 11. 2006    Naslov: Citirajte i odgovorite

:B-fly: Hvala na pomoci! Jos me zanima jel moj program totalna katastrofa ili bi na kolokviju dobio neke bodove? Ti zadaci se moraju bas rjesavati preko rekurzija? :bee:
#butterfly Hvala na pomoci! Jos me zanima jel moj program totalna katastrofa ili bi na kolokviju dobio neke bodove? Ti zadaci se moraju bas rjesavati preko rekurzija? Pcelica


[Vrh]
Korisnički profil Pošaljite privatnu poruku
vsego
Site Admin
Site Admin


Pridružen/a: 06. 10. 2002. (22:07:09)
Postovi: (3562)16
Spol: zombi
Sarma = la pohva - posuda
854 = 1068 - 214
Lokacija: /sbin/init

PostPostano: 15:30 čet, 23. 11. 2006    Naslov: Citirajte i odgovorite

Pa, ti pozivas rekurzivni [tt]PREORDER()[/tt], u cemu je problem? :grebgreb: Samo ti fali drugi rekurzivni poziv. :D

I jos jedna stvar: ono sto smo Gauss i ja pisali
[code:1] dvoje(LEFT_CHILD(T));
dvoje(RIGHT_CHILD(T)); [/code:1]
nije dobro. Treba ici:
[code:1] BTREE sub;
...
LEFT_SUBTREE(ROOT(T), T, &sub); /* ili tako nekako; ne znam deklaraciju napamet */
dvoje(sub);
RIGHT_SUBTREE(ROOT(T), T, &sub); /* ili tako nekako; ne znam deklaraciju napamet */
dvoje(sub);[/code:1]
jer [tt]LEFT/RIGHT_CHILD()[/tt] vraca [tt]node[/tt] sto je samo u pointerskoj implementaciji isto sto i [tt]BTREE[/tt], ali generalno nije. :)
Pa, ti pozivas rekurzivni PREORDER(), u cemu je problem? Kotacici rade 100 na sat Samo ti fali drugi rekurzivni poziv. Very Happy

I jos jedna stvar: ono sto smo Gauss i ja pisali
Kod:
   dvoje(LEFT_CHILD(T));
   dvoje(RIGHT_CHILD(T));

nije dobro. Treba ici:
Kod:
   BTREE sub;
   ...
   LEFT_SUBTREE(ROOT(T), T, &sub); /* ili tako nekako; ne znam deklaraciju napamet */
   dvoje(sub);
   RIGHT_SUBTREE(ROOT(T), T, &sub); /* ili tako nekako; ne znam deklaraciju napamet */
   dvoje(sub);

jer LEFT/RIGHT_CHILD() vraca node sto je samo u pointerskoj implementaciji isto sto i BTREE, ali generalno nije. Smile



_________________
U pravilu ignoriram pitanja u krivim topicima i kodove koji nisu u [code]...[/code] blokovima.
Takodjer, OBJASNITE sto vas muci! "Sto mi je krivo?", bez opisa u cemu je problem, rijetko ce zadobiti moju paznju.
Drzim prodike
[Vrh]
Korisnički profil Pošaljite privatnu poruku
GauSs_
Moderator
Moderator


Pridružen/a: 28. 01. 2004. (21:01:17)
Postovi: (53C)16
Spol: muško
Sarma = la pohva - posuda
72 = 110 - 38
Lokacija: 231

PostPostano: 18:30 čet, 23. 11. 2006    Naslov: Citirajte i odgovorite

[quote="vsego"]jer [tt]LEFT/RIGHT_CHILD()[/tt] vraca [tt]node[/tt] sto je samo u pointerskoj implementaciji isto sto i [tt]BTREE[/tt], ali generalno nije. :)[/quote]

Istina :D
vsego (napisa):
jer LEFT/RIGHT_CHILD() vraca node sto je samo u pointerskoj implementaciji isto sto i BTREE, ali generalno nije. Smile


Istina Very Happy



_________________
The purpose of life is to end
Malo sam lose volje...

Prosle su godine kolokviji bili laksi, zar ne?
[Vrh]
Korisnički profil Pošaljite privatnu poruku Posjetite Web stranice
vanja
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 16. 02. 2006. (16:38:26)
Postovi: (9E)16
Spol: žensko
Sarma = la pohva - posuda
10 = 12 - 2

PostPostano: 9:12 pet, 24. 11. 2006    Naslov: Citirajte i odgovorite

[quote="GauSs_"][code:1]....

if( (LEFT_CHILD(T)!=LAMBDA && RIGHT_CHILD(T)!=LAMBDA ){ ....
[/code:1][/quote]

zar LEFT_CHILD i RIGHT_CHILD ne primaju 2 parametra ???

prototipovi:
node LEFT_CHILD(node i, BTREE T)
node RIGHT_CHILD(node i, BTREE T)

da li bi bilo dobro ovako??

[code:1]// preorder ispis
void dvoje(BTREE T){
if(EMPTY(T)) return;
if( LEFT_CHILD(ROOT(T),T)!=LAMBDA && RIGHT_CHILD(ROOT(T),T)!=LAMBDA ){
printf("%c ", LABEL(ROOT(T), T));
}
BTREE sub;
LEFT_SUBTREE(T, &sub);
dvoje(sub);
RIGHT_SUBTREE(T, &sub);
dvoje(sub);
}[/code:1]
GauSs_ (napisa):
Kod:
....

   if( (LEFT_CHILD(T)!=LAMBDA && RIGHT_CHILD(T)!=LAMBDA ){ ....


zar LEFT_CHILD i RIGHT_CHILD ne primaju 2 parametra ???

prototipovi:
node LEFT_CHILD(node i, BTREE T)
node RIGHT_CHILD(node i, BTREE T)

da li bi bilo dobro ovako??

Kod:
// preorder ispis
void dvoje(BTREE T){
   if(EMPTY(T)) return;
   if( LEFT_CHILD(ROOT(T),T)!=LAMBDA && RIGHT_CHILD(ROOT(T),T)!=LAMBDA ){
     printf("%c ", LABEL(ROOT(T), T));
   }
   BTREE sub;
   LEFT_SUBTREE(T, &sub);
   dvoje(sub);
   RIGHT_SUBTREE(T, &sub);
   dvoje(sub);
}


[Vrh]
Korisnički profil Pošaljite privatnu poruku
GauSs_
Moderator
Moderator


Pridružen/a: 28. 01. 2004. (21:01:17)
Postovi: (53C)16
Spol: muško
Sarma = la pohva - posuda
72 = 110 - 38
Lokacija: 231

PostPostano: 10:30 pet, 24. 11. 2006    Naslov: Citirajte i odgovorite

[quote="vanja"][quote="GauSs_"][code:1]....

if( (LEFT_CHILD(T)!=LAMBDA && RIGHT_CHILD(T)!=LAMBDA ){ ....
[/code:1][/quote]

zar LEFT_CHILD i RIGHT_CHILD ne primaju 2 parametra ???

prototipovi:
node LEFT_CHILD(node i, BTREE T)
node RIGHT_CHILD(node i, BTREE T)
[/quote]

a vjerojatno. ne sjecam se vise :(
vanja (napisa):
GauSs_ (napisa):
Kod:
....

   if( (LEFT_CHILD(T)!=LAMBDA && RIGHT_CHILD(T)!=LAMBDA ){ ....


zar LEFT_CHILD i RIGHT_CHILD ne primaju 2 parametra ???

prototipovi:
node LEFT_CHILD(node i, BTREE T)
node RIGHT_CHILD(node i, BTREE T)


a vjerojatno. ne sjecam se vise Sad



_________________
The purpose of life is to end
Malo sam lose volje...

Prosle su godine kolokviji bili laksi, zar ne?
[Vrh]
Korisnički profil Pošaljite privatnu poruku Posjetite Web stranice
Prethodni postovi:   
Započnite novu temu   Odgovorite na temu   printer-friendly view    Forum@DeGiorgi: Početna -> Kolegiji 2. godine -> Strukture podataka i algoritmi Vremenska zona: GMT + 01:00.
Stranica 1 / 1.

 
Forum(o)Bir:  
Ne možete otvarati nove teme.
Ne možete odgovarati na postove.
Ne možete uređivati Vaše postove.
Ne možete izbrisati Vaše postove.
Ne možete glasovati u anketama.
You cannot attach files in this forum
You can download files in this forum


Powered by phpBB © 2001, 2002 phpBB Group
Theme created by Vjacheslav Trushkin
HR (Cro) by Ančica Sečan