Tölvunarfræði 2
Vikublað 14
Þessi vika er síðasta vikan þar sem farið verður í eitthvað nýtt efni. Það er reyndar bara fyrirlestur
á þriðjudeginum, þar sem fimmtudagurinn 21. apríl er sumardagurinn fyrsti og engin kennsla er á þeim
degi. Á þriðjudeginum verður því lokið við umfjöllun um tvíleitartré (e. binary search trees) úr
kafla 12.
Í næstu viku verða eingöngu dæmatímar þar sem farið verður yfir dæmin hér að neðan. Einnig verður
á þriðjudeginum 26. apríl kl. 11:05 stutt yfirferð yfir námsefnið, kynning á fyrirkomulagi prófsins,
auk þess sem hægt verður að spyrja spurninga um efni námskeiðsins.
Heimadæmi 11
Leysið eftirfarandi dæmi og skilið í hólf dæmatímakennara ykkar fyrir
kl 12:00 mánudaginn 25. apríl. Þeir taka ekki dæmum sem koma seinna.
- Dæmi 12.47 á bls. 521 í kennslubók.
[Þýðing: Teiknið tvíleitartréð sem verður til þegar þið setjið stök með lyklana E, A, S, Y, Q, U, E, S, T, I, O, N í
þessari röð inní tvíleitartré sem er tómt í upphafi. ]
- Hvaða röð innsetninga á inntakslyklunum E, A, S, Y, Q, U, E, S, T, I, O, N gefur tvíleitartré sem er eins lágt og
mögulegt er? Miðið við að í innsetningunni sé notað Forrit 12.8 á bls. 517 í kennslubókinni.
- Sýnið endurkvæma skilgreiningu á fallinu getmin( T ) á tvíleitartré. Fallið skilar minnsta
stakinu í trénu T. Skilgreiningin á að vera í svipuðum anda og skilgreiningar í kafla 2 í
hefti Önnu. Þið megið þó nota
aðeins myndrænni framsetningu á trjánum, svipað og gert var í fyrirlestri.
- Sýnið tréð hér að neðan eftir að hnúti 15 hefur verið lyft upp fyrir hnút 10 (e. left rotation at 10):
7
/ \
3 10
/ / \
1 8 15
/ \
12 20
\
13
- [Haustpróf 2004] Setja á öll stök hrúgu (e. heap) yfir í tvíleitartré (e. binary search tree). Hrúgan
er gefin sem N-staka vektor og þið getið aðeins notað aðgerðina insert á tvíleitartréð.
i) Myndi það borga sig að setja inn stökin í vektornum í röð frá byrjun hans, þ.e. fyrst pq[1],
síðan pq[2], o.s.frv.? ii) Hvað með frá hinum endanum (þ.e. byrja á pq[N])? iii) Er
einhver önnur röð staka úr hrúguvektornum sem væri betri en þær tvær ofangreindu? Rökstyðjið svör ykkar.
annaing (hja) hi.is / hh (hja) hi.is, 18. apríl, 2005.