Diff for ''

Revision 16
Author:
black
Time:
2022-03-24 10:15
Revision 1
Time:
2024-06-13 22:29
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
Nejspíše budete v Praze při studiu chtít i bydlet a jíst. Většina mimopražských studentů, alespoň v prvních letech, bydlí na Koleji 17. listopadu. Proto se v této kapitole zaměříme především na ni. Neznamená to ale, že byste nemohli bydlet kdekoliv jinde, spousta matfyzáků bydlí i na jiných kolejích nebo na bytě. # Binarni vyhledavaci strom - Prolog
Line 3: Line 3:
#### Podkapitoly #### <{ForumPost(poster="Anonymous", timestamp=2009-06-15 13:10:24)}>
Ahoj,
  
nevite, jak v prologu otestovat, zda-li je objekt korektni binarni vyhledavaci strom? Stromy jsou struktury t(LeftSubTree, Root, RighSubTree). Diky moc predem!
<{/ForumPost}>
Line 5: Line 9:
* [Kolej 17. listopadu](Kolej%2017.%20listopadu)
* [ Další koleje](Další_koleje)
* [Přidělování koleje](Přidělování%20koleje)
* [ Menzy](Nejdůležitější_menzy)
<{ForumPost(poster="Him", timestamp=2009-06-15 18:12:22)}>


    %match(+V,+LftBnd,+RgtBnd)
    fit(V,LftBnd,RgtBnd):-((number(LftBnd),V>=LftBnd);(LftBnd == nInf)),((number(RgtBnd),V<RgtBnd);(RgtBnd == pInf)).
    
    %binTree(+Tree)
    binTree(t(L,V,R)):-binTree(t(L,V,R),nInf,pInf).
    binTree(nil,_,_).
    binTree(t(L,V,R),LftBnd,RgtBnd):-fit(V,LftBnd,RgtBnd),binTree(L,LftBnd,V),binTree(R,V,RgtBnd).
    

Snad to bude ono. Funguje to jednoduse tak, ze si drzim cestou v jakem rozmezi se musi hodnoty vrcholu pro jednotlive podstromy. Pokud se do stromu pridavaji stejne hodnoty, ktere ve stromu jiz jsou tak predikat pocita s tim, ze se davaji vzdy do praveho syna.
nInf ~ -oo
pInt ~ +oo
  
Dej vedet, jestli to resi tvuj problem ;-)
<{/ForumPost}>

<{ForumPost(poster="Anonymous", timestamp=2009-06-15 19:39:04)}>
Ahoj,
  
vypada to v pohode, diky moc. Mimochodem, psal si to sam nebo to odnekud je? Pokud za b, mohl bys mi prosim napsat, odkud?
<{/ForumPost}>

<{ForumPost(poster="Him", timestamp=2009-06-15 19:44:40)}>
Je to vlastní výroba. Ostatně je to nejpřímější způsob jak to napsat. To bys měl dát dohromady sám, ne? Nebo je na tom něco nejasného?
<{/ForumPost}>