CourseWare Wiki
Switch Term
Winter 2024 / 2025
Winter 2023 / 2024
Winter 2022 / 2023
Winter 2021 / 2022
Winter 2020 / 2021
Winter 2019 / 2020
Winter 2018 / 2019
Older
Search
Log In
b221
courses
b0b36prp
labs
lab10
Warning
This page is located in archive. Go to the latest version of this
course pages
. Go the latest version of
this page
.
Table of Contents
10 - Struktury a spojové seznamy
Procvičované témata
Úkoly na cvičení
Další úkoly na procvičení
Odkazy
10 - Struktury a spojové seznamy
pro vyučující:
10
pro studenty: sablona pro implementaci fronty - paralelka 204
queue-template.zip
Procvičované témata
Dynamická alokace
Rekurze
Valgrind
Spojový seznam
Zásobník vs. fronta
Úkoly na cvičení
Implementujte frontu, která bude obsahovat celá čísla, která bude uživatel zadávat z klávesnice.
Společně s cvičícím navrhněte vhodnou datovou stukturu, na které bude fronta založena.
Společně s cvičícím navrhněte prototypy funkcí, které umožní vkládání dat do fronty (PUSH), odebírání z fronty (POP), dotaz na poslední prvek.
Vytvořte funkci, která vypíše na konzoli obsah celé fronty.
Nezapomeňte implementovat i funkci, která uvolní všechna data spojená s implementovanou frontou.
Kontrolujte správnost dynamické alokace paměti pomocí Valgrindu.
Upravte vhodně kód tak, abyste naimplementovali zásobník.
S cvičícím diskutujte změny, které jste v kódu provedli.
Další úkoly na procvičení
Implementujte spojový seznam, který v sobě bude obsahovat vždy dvojici dat - dvě celá čísla - první bude datová složka a druhé bude představovat prioritu.
Upravte předchozí seznam tak, aby implementoval prioritní frontu tak, aby funkce PUSH od začátku vytvářela vnitřní stukturu seznamu seřazenou podle priority.
Odkazy
Prezentace ke cvičení
Vzorová implementace fronty - kostra
courses/b0b36prp/labs/lab10.txt
· Last modified: 2022/11/21 09:15 by
deckejin