[Cvičení 2] | [Obsah] | [Cvičení 4] |
Úloha 3.1
Implementujte strukturu pro uložení bodů v prostoru.Řešení:
Úloha 3.2
Naimplementujte spojový seznam (jednosměrně nebo obousměrně vázaný), do kterého se ukládají jména a telefonní čísla. Naprogramujte tyto procedury a funkce:Napište jednoduchou konzolovou aplikaci pro otestování implementace seznamu; data zadávejte z klávesnice. Nemusíte využít všechny funkce.
- inicializace prázdného seznamu
- test, zda je seznam prázdný
- vložení záznamu na konec seznamu
- vložení záznamu za prvek (parametrem je ukazatel na prvek, za který se vkládá, a nové jméno a telefonní číslo)
- hledání záznamu (podle jména i telef. čísla) - vrací ukazatel na záznam, pokud není v seznamu, vrací NULL
- zjištění ukazatele na první záznam
- zjištění ukazatele na následující záznam
- výmaz prvku (parametrem je ukazatel na existující prvek, který se má vymazat)
- zrušení celého seznamu
Řešení:
Jednosměrný spojový seznam (implementace telefonního seznamu):Obousměrný spojový seznam (implementace telefonního seznamu):
telefonní seznam jako knihovna: seznam_tel_j.cpp, seznam_tel_j.h jednoduchá aplikace využívající telefonní seznam: spoj_sezn_jedn.dev, spoj_sezn_jedn.cpp spoj_sezn_jedn.cbp, spoj_sezn_jedn.cpp
telefonní seznam jako knihovna: seznam_tel_o.cpp, seznam_tel_o.h jednoduchá aplikace využívající telefonní seznam: spoj_sezn_obou.dev, spoj_sezn_obou.cpp spoj_sezn_obou.cbp, spoj_sezn_obou.cpp
Úloha 3.3
Implementujte frontu celých čísel a operace nad ní:Řešení:
- pomocí spojového seznamu
- pomocí pole jako kruhovou frontu
Úloha 3.4
Implementujte zásobník znaků a operace nad ním:Řešení:
- pomocí spojového seznamu
- pomocí pole
- Zásobník jako spojový seznam
Knihovna: zasob1.h, zasob1.c Dev C++: stack1.dev, stack1.c CodeBlocks: stack1.cbp, stack1.c - Zásobník s polem
Knihovna: zasob2.h, zasob2.c Dev C++: stack2.dev, stack2.c CodeBlocks: stack2.cbp, stack2.c
[Cvičení 2] | [Obsah] | [Cvičení 4] |