CourseWare Wiki
Switch Term
Summer 2023 / 2024
Summer 2022 / 2023
Summer 2021 / 2022
Summer 2020 / 2021
Summer 2019 / 2020
Summer 2018 / 2019
Summer 2017 / 2018
Older
Search
Log In
b172
courses
b3b36prg
hw
hw06
Warning
This page is located in archive. Go to the latest version of this
course pages
.
Differences
This shows you the differences between two versions of the page.
View differences:
Side by Side
Inline
Go
Link to this comparison view
Both sides previous revision
Previous revision
2018/04/11 20:49 vanapet1 [Naivní implementace fronty v poli]
2018/04/11 20:47 vanapet1 [Testování v BRUTE]
2018/04/11 20:39 vanapet1 [Volitelné zadání]
2018/04/10 14:38 vanapet1
2018/02/19 17:38 faiglj [Odevzdání a hodnocení]
2018/02/19 15:20 faiglj [HW 06 - Kruhová fronta]
2018/02/18 19:32 faiglj
2018/02/18 07:42 faiglj [HW 06 - Kruhová fronta]
2018/02/06 17:18 external edit
Go
Next revision
Previous revision
2018/04/11 20:49 vanapet1 [Naivní implementace fronty v poli]
2018/04/11 20:47 vanapet1 [Testování v BRUTE]
2018/04/11 20:39 vanapet1 [Volitelné zadání]
2018/04/10 14:38 vanapet1
2018/02/19 17:38 faiglj [Odevzdání a hodnocení]
2018/02/19 15:20 faiglj [HW 06 - Kruhová fronta]
2018/02/18 19:32 faiglj
2018/02/18 07:42 faiglj [HW 06 - Kruhová fronta]
2018/02/06 17:18 external edit
Go
courses:b3b36prg:hw:hw06 [2018/04/11 20:39]
vanapet1
[Volitelné zadání]
courses:b3b36prg:hw:hw06 [2018/04/11 20:49]
vanapet1
[Naivní implementace fronty v poli]
Line 15:
Line 15:
==== Naivní implementace fronty v poli ====
==== Naivní implementace fronty v poli ====
-
Nejjednodušší implementací fronty v poli je ukládání ''i''-tého prvku ve frontě na ''i''-tou pozici v poli. Přidávání nového prvku je velmi snadné.
Na druhou
vyjímání prvků může tvrvat dlouho, protože abychom zachovali pořadí
, tak
je nutné nejprve vyjmout 1. prvek (z čela) fronty a všechny následující prvky posunout o jednu pozici. **Taková implementace je značně neefektivní pro větší fronty, proto se zpravidla nepoužívá a ani v tomto úkolu nevede na správné řešení.**
+
Nejjednodušší implementací fronty v poli je ukládání ''i''-tého prvku ve frontě na ''i''-tou pozici v poli. Přidávání nového prvku je velmi snadné.
Nicméně
vyjímání prvků může tvrvat dlouho, protože
(
abychom zachovali pořadí
)
je nutné nejprve vyjmout 1. prvek (z čela) fronty a všechny následující prvky posunout o jednu pozici. **Taková implementace je značně neefektivní pro větší fronty, proto se zpravidla nepoužívá a ani v tomto úkolu nevede na správné řešení.**
==== Kruhová fronta v poli ====
==== Kruhová fronta v poli ====
Line 142:
Line 142:
- Vloží se cca 90 elementů (push)
- Vloží se cca 90 elementů (push)
- Vyjmou se všechny elementy (pop) a zkontroluje se jejich pořadí
- Vyjmou se všechny elementy (pop) a zkontroluje se jejich pořadí
-
- Zkontroluje se
nulová velikost fronty
+
- Zkontroluje se
, že je fronta prázdná (funkce get_queue_size() vrací nulu)
=== Man04 ===
=== Man04 ===
Line 156:
Line 156:
- Částečně se zaplní (push)
- Částečně se zaplní (push)
- Vyprázdní se a zkontroluje se jejich obsah (pop)
- Vyprázdní se a zkontroluje se jejich obsah (pop)
-
- Zkontroluje se, že
mají
všechny fronty
nulovou velikost
+
- Zkontroluje se, že
jsou
všechny fronty
prázdná (funkce get_queue_size() vrací nulu)
=== Opt01 ===
=== Opt01 ===
Line 164:
Line 164:
- Zkontroluje se obsah (get)
- Zkontroluje se obsah (get)
- Fronta se vyprázdní (pop)
- Fronta se vyprázdní (pop)
-
- Zkontroluje se
nulová velikost fronty
+
- Zkontroluje se
, že je fronta prázdná (funkce get_queue_size() vrací nulu)
=== Opt02 ===
=== Opt02 ===
courses/b3b36prg/hw/hw06.txt
· Last modified: 2018/04/11 20:49 by
vanapet1