30.Prednaska/Cvicenie0
Z Pascal
30. Cvičenie
< 30.Prednáška | riešené úlohy
Rozcvička
1. lexikografický strom
type TLStrom = class Pocet: Integer; P: array ['a'..'e'] of TLStrom; end; |
- metóda function TLStrom.Pocet(K: Integer): Integer zistí počet vrcholov v úrovni K, ktoré majú nulový Pocet = počet rôznych slov v slovníku dĺžky práve K
Cvičenie
Na prednáške sa preberali len tieto tri triedenia: BubbleSort, MinSort, QuickSort. Okrem toho boli spomenuté (len hrubá idea): InsertSort, MergeSort, RadixSort.
- na tabuli ručne triediť nejakú postupnosť čísel (10 - 15 náhodných čísel) najprv základnými triedeniami, potom sa zamyslieť nad InsertSort a MergeSort
- ak sa bude dať, nasimulovať triedenia s kartičkami: pred tabulu v učebni postaviť 10 - 15 študentov a rozdať im kartičky s číslami -zvyšní študenti ich riadia podľa konkrétneho triediaceho algoritmu
- variant: študenti čísla neukážu tým, ktorí ich riadia, len poslúchajú na príkazy "ak je prvý väčší ako druhý, vymeňte sa" - až na záver sa ukáže, či sú dobre usporiadaní
- nasimulovať MergeSort s kartičkami
- RadixSort na tabili, nejakých 10 - 20 náhodných trojciferných čísel
- ak bude možnosť, pozrieť si rôzne triedenia na počítači, napr.
Domáca úloha
1. naprogramovať ľubovoľný triediaci algoritmus , ktorého kód nebol v prednáške
- ako procedúru TSort.Sort do projektu z prednášky
2. ľubovoľným spôsobom implementovať algoritmus Radix sort
- napríklad na zotriedenie viac-ciferných čísel