triedenie ii
DESCRIPTION
Kód ITMS projektu: 26110130519 Gymnázium Pavla Jozefa Šafárika – moderná škola tretieho tisícročia. Triedenie II. Obsah. Triedenie Triediace algoritmy Bubblesort SelectionSort Použité zdroje. Triedenie priamym vkladaním. InsertSort Princíp: - PowerPoint PPT PresentationTRANSCRIPT
Triedenie II.
Kód ITMS projektu: 26110130519Gymnázium Pavla Jozefa Šafárika – moderná škola tretieho tisícročia
Vzdelávacia oblasť: Matematika a práca s informáciami
Predmet Programovanie
Ročník, triedy: 4. ročník
Tematický celok: Triedenie
Vypracoval: Mgr. Andrea Pločicová
Dátum: marec 2013
Obsah
• Triedenie
• Triediace algoritmy
• Bubblesort
• SelectionSort
• Použité zdroje
2
Triedenie priamym vkladaním InsertSortPrincíp:• pole rozdelíme na dve časti (utriedenú a neutriedenú),• na začiatku za utriedenú postupnosť považujeme prvý prvok
poľa,• prvky z neutriedenej časti postupne zaraďujeme do utriedenej
časti,• na konci sú všetky prvky zaradené a neutriedená časť zanikne.
ukážka
3
Príklad
4
5 1 12 -5 16Neusporiadané pole:
1. zaraďovanie:
5 1 12 -5 16
5>1, výmena
utriedená časť neutriedená časť
5
2. zaraďovanie:
1 5 12 -5 16
5<12, zostáva
utriedená časť neutriedená časť
3. zaraďovanie:
15>-5, 5>-5, 1>-5, posúva sa
utriedená časť neutriedená časť
1 5 12 -5 16
6
-5 1 5 12 16
4. zaraďovanie:
16>12, zostáva
utriedená časť neutriedená časť
-5 1 5 12 16
UTRIEDENÉ POLE:
Algoritmus InsertSort
7
for i:=2 to pocet do beginj:=i-1zarad:=p[i]; while (j>0) and (hodnota<p[j]) do begin p[j+1]:=p[j]; dec(i); end;
p[j+1]:= zarad;end;
Vonkajší cyklus posúva druhý až posledný prvok na zaraďovanie)
Vnútorný cyklus zaraďuje prvok p[i] na správne miesto tak, že všetky väčšie posúva o jedno miesto vpravo
Rýchle triedenie - Quiksort
8
• Jeden z najrýchlejších triediacich algoritmov založených na porovnávaní;
Princíp:• Zvolíme prvok (PIVOT), ktorý predstavuje
strednú hodnotu všetkých prvkov (najnáročnejšia časť);
• Pomocou pivota zaradíme všetky menšie prvky naľavo od neho a väčšie napravo
9
• Tým sa rozdelí pole na 2 časti;• V každej časti postup opakujeme:
Nájdeme pivota a roztriedime podľa neho prvky.• Opakujeme, kým nezostanú jednoprvkové
postupnosti čísel.• Efektívnosť algoritmu záleží od dobrého
výberu pivota, ak je približne polovica prvkov menšia a polovica väčšia ako on.
ukážka
Porovnanie algoritmov
10
• Bubble Sort, InsertSort a SelectionSort patria medzi najpomalšie algoritmy;
• BubbleSort je najhorší – vyžaduje veľa výmen;
• InsertSort je z nich najrýchlejší, používa pri triedení postupnosti do 1000 prvkov, alebo vtedy, ak je postupnosť takmer usporiadaná
Úloha 1
11
Vytvorte program, ktorý utriedi prvky jednorozmerného poľa.
Použite aspoň 2 rôzne metódy triedenia. Porovnajte ich.
Prvky poľa vygenerujte ako náhodné čísla z intervalu <0,50>.
Objekty do formulára umiestnite podľa potreby.
Úloha 2
12
V textovom súbore bodovanie.txt máme uložené názvy štátov a bodový zisk za
umiestnenia ich športovcov na olympiáde. Vytvorte program, ktorý tieto štáty usporiada
zostupne podľa získaného počtu bodov s použitím jedného poľa. Komponenty
do formulára umiestnite podľa potreby.
Použité zdroje
• http://www.gjar-po.sk/studenti/informatika/ci_99_00/dzurenko/old/maturity/m03.htm
13