Dynamiczny przydział pamięci

Page 1

Do tematu 3 i 4 Dynamiczny przydział pamięci, kolejki i drzewa.


Zaczniemy Zaczniemy od od rozwiÄ…zania rozwiÄ…zania poprzedniego poprzedniego zadania zadania




pętla? a t ła ia z d Jak

Zwróć uwagę, że ponieważ procedura czytaj_stos zawiera w sobie pętlę, w programie głównym możemy wywołać ją jednokrotnie do wypisania całej listy.

Czy rozumiesz dlaczego ?


Znamy Znamy już już pojęcie pojęcie stosu stosu wa struktura io n li – ) k c ta S Stos (ang. j dane dokładane są na danych, w które ierzchołka stosu są izw , First In t wierzch stosu s a L , O IF L r typu pobierane (bufo jściu, pierwszy na we Out; ostatni na wyjściu).

Ideę stosu danych można zilustrować jako stos położonych jedna na drugiej książek – nowy egzemplarz kładzie się na wierzch stosu i z wierzchu stosu zdejmuje się kolejne egzemplarze. Elementy stosu poniżej wierzchołka stosu można wyłącznie obejrzeć, aby je ściągnąć, trzeba najpierw po kolei ściągnąć to, co jest nad nimi.


Przykład Przykład zastosowania zastosowania stosu stosu -- odwrotna odwrotna notacja notacja polska polska (RPN) (RPN) pomocą a z h c y n a żeń zapis a r y w iu n a zy oblicz r p ie n a w o je zastos u jd a n z s o (RPN). t j S ie k ls o p ji otac odwrotnej n pująco: ę t s a n a d yglą Algorytm w Wyzeruj stos. Dla wszystkich symboli z wyrażenia RPN wykonuj: jeśli i-ty symbol jest liczbą, to odłóż go na stos, jeśli i-ty symbol jest operatorem to: zdejmij ze stosu jeden element (ozn. a), zdejmij ze stosu kolejny element (ozn. b), odłóż na stos wartość b operator a. Zdejmij ze stosu wynik.

Jest wykorzystywany między innymi przez język Forth.


Pojęcie Pojęcie kolejki kolejki

Kolejka (ang. queue) – liniowa struktura danych, w której nowe dane

dopisywane są na końcu kolejki, a z początku kolejki pobierane są dane do dalszego przetwarzania (bufor typu FIFO, First In, First Out; pierwszy na wejściu, pierwszy na wyjściu).


Pojęcie Pojęcie listy listy Lista - dynamiczna struktura danych, używana w informatyce. Składa się z podstruktur wskazujących na następniki i/lub poprzedniki.

Więcej znajdziecie w podręczniku i Internecie.

Teraz przykład praktyczny





Zadanie Przeanalizuj powyższy kod programu. Przepisz i uruchom. Zmodyfikuj w taki sposób, aby w elementach listy było przechowywane również imię obok nazwiska i wieku. Kod wklej do sprawozdania.


Pojęcie Pojęcie drzewa drzewa Strukturę drzewa pokażemy na przykładzie drzewa binarnego. Tak jak lista jednokierunkowa jest najprostszą strukturą liniową (jednowymiarową), tak drzewo binarne jest najprostszą strukturą dwuwymiarową. W praktyce przejawia się to tym, że każdy element ma dwa rozgałęzienia - lewe i prawe.







Zadanie

Uruchom program, kod wklej do sprawozdania.


Podsumowanie Podsumowanie Sprawozdanie z tematu: 4. Dynamiczny przydział pamięci, kolejki i drzewa. Rozbuduj tak, aby zawierało: Sprawozdanie powinno zawierać: ● ● ● ●

Pojęcie stosu, listy, kolejki i drzewa. Kod programu z przykładem stosu. Zmodyfikowany kod z przykładem listy (imię, nazwisko, wiek). Kod programu z zastosowaniem drzewa.

Uwaga!!! Redagując kody w sprawozdaniu (dokument online) – zastosuj wcięcia.


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.