Posty

Wyświetlam posty z etykietą kolejka

[c++] kolejka cykliczna

czyli innymi słowy jest to tablicowa reprezentacja kolejki. Tablicę traktujemy jako koło, w którym pierwszy element tablicy jest następnym po ostatnim. Operacje: 1. MAKENULL(Q) – czyni kolejkę pustą 2. FRONT(Q) – zwraca pierwszy element kolejki 3. ENQUEUE(x,Q) – wstaw x do kolejki 4. DEQUEUE(Q) – usuwa pierwszy element z kolejki 5. EMPTY(Q) – zwraca true gdy kolejka jest pusta, w przeciwnym wypadku zwraca false klik:

[c++] Kolejka wskaźnikowa

Kolejki są listami, których elementy można wstawiać z jednego końca (rear-tył) a usuwać z drugiego (front - przód).  Enqueue(x) – wstawia element x na koniec kolejki Operacja Enqueue polega na: - stworzeniu nowej komórki: - wstawieniu komórki na koniec kolejki - uaktualnieniu wartości zmiennej rear tak, aby wskazywała na nowo utworzoną komórkę   Dequeue -  usuwa element z początku kolejki.  polega na: - sprawdzeniu, czy kolejka nie jest pusta - jeżeli nie jest pusta, to:     • zapamiętujemy dotychczasową głowę w zmiennej pomocniczej p     • aktualizujemy pole front tak, aby wskazywało na dotychczasowy pierwszy element, który od tej               pory będzie głową     • usuwamy z pamięci (zwalniamy pamięć) element wskazywany przez p (wcześniej będący głową) Destruktor : -zwalnia pamięć przydzieloną na elementy kolejki Empty: -zwraca prawdę, gdy kolejka jest pusta, fałsz wpp. FrontElem : -sp...