Triedenie(riešené príklady): Rozdiel medzi revíziami
Riadok 4: | Riadok 4: | ||
{{Draft}} | {{Draft}} | ||
{{Skripta programovanie (zbierka úloh)}} | {{Skripta programovanie (zbierka úloh)}} | ||
+ | |||
+ | ==Triedenie poľa komplexných čísel== | ||
+ | ===Zadanie=== | ||
+ | Úlohou je ale usporiadať pole komplexných čísel. | ||
+ | |||
+ | Viac na [[Triedenie poľa komplexných čísel (riešené príklady)]] | ||
+ | |||
==Triedenie poľa štruktúr== | ==Triedenie poľa štruktúr== |
Verzia zo dňa a času 16:14, 8. marec 2010
Algoritmy a programovanie - zbierka úloh
Triedenie
::Triedenie poľa komplexných čísel
::Triedenie poľa smerníkov na komplexné čísla
::Triedenie poľa štruktúr
::Triedenie poľa smerníkov
Obsah
Triedenie poľa komplexných čísel
Zadanie
Úlohou je ale usporiadať pole komplexných čísel.
Viac na Triedenie poľa komplexných čísel (riešené príklady)
Triedenie poľa štruktúr
Zadanie
Zostavte program, ktorý bude triediť dáta uložené v súbore na základe užívateľom zadaného kritéria. Program po spustení načíta dáta zo súboru a uloží ich do poľa štruktúr. Následne na monitor zobrazí výzvu, v ktorej bude mať užívateľ možnosť vybrať kritérium triedenia. Pre jednoduchosť uvažujme príklad, v ktorom budeme triediť zamestnancov nejakej fiktívnej firmy podľa mena, priezviska alebo podľa roku jeho narodenia. Dáta v súbore nech sú uložené vo formáte kde jednotlivé položky sú oddelené medzerami čiarkami v tvare:
Meno Priezvisko , Rok_narodenia
Metodický komentár
Cieľom tejto úlohy je precvičiť prácu so štruktúrami v jazyku C, použitie funkcie rýchleho triedenia (quick sort) z knižnice stdlib.h, načítavanie dát zo súboru, a pomôcť osvojiť si základné znalosti pri práci s ukazovateľmi (predávanie ako parameter do funkcie, pretypovávanie).
Viac na Triedenie poľa štruktúr (riešené príklady)
Triedenie poľa ukazovateľov alebo Triedime štruktúry efektívne
Zadanie
Uvažujme rovnaké zadanie ako v predošlom. Navyše požadujme viacúrovňové (vnorené) triedenie podľa triediaceho kritéria s nižšou prioritou ak sú položky podľa aktuálneho triediaceho kritéria ekvivalentné. V našom jednoduchom príklade to znamená, že ak napríklad triedime zamestnancov podľa krstného mena a mená niektorých zamestnancov sú rovnaké, potom budú títo utriedení podľa priezviska. Naopak, ak budeme triediť podľa priezviska a priezviská niektorých zamestnancov budú rovnaké, potom ich utriedime podľa krstného mena. Túto situáciu môžeme rozšíriť aj o triedenie podľa roku narodenia. V tomto prípade môžeme definovať prioritu jednotlivým triediacim kritériam a triediť následne podľa priorít.
Metodický komentár
- Cieľom tejto úlohy v porovaní s predchádzajúcou je efektívne triediť dáta použitím ukazovateľov a poukázať na ďalšie možnosti pri ich triedení. Využijú sa pokročilejšie techniky práce s ukazovateľmi, dynamická alokácia a realokácia pamäte.