Page 63 - 4656
P. 63

Алгоритми і структури даних. Лабораторний практикум.

                              Лабораторна робота № 8.
                                          Черги

                    Мета: ознайомитись із поняттям черги у програмуванні.
            Алгоритм роботи черги. Навчитися використовувати структуру
            даних черга на прикладі мови Джава.
            Теоретичні відомості

                    Черга  (англ.  queue)  в  програмуванні  —  динамічна
            структура даних, що працює за принципом «перший прийшов —
            перший пішов» (англ. FIFO — first in, first out). У черги є голова
            (англ. head) та хвіст (англ. tail). Елемент, що додається до черги,
            опиняється  в  її  хвості.  Елемент,  що  видаляється  з  черги,
            знаходиться в її голові.
                    Така черга повністю аналогічна звичній «базарній» черзі,
            в якій хто перший встав в неї, той першим буде обслуженим.
                    Основні операції з чергою:
            1.  англ.  enqueue  —  "поставити  в  чергу".  Операція  додавання
                елемента  в  "хвіст"  черги.  При  цьому  довжина  черги
                збільшується  на  одиницю.  Якщо  відбувається  намагання
                додати  елемент  у  вже  заповнену  чергу,  відбувається  її
                переповнення (англ. queue overflow).
            2.  англ. dequeue — "отримання з черги". Операція, яка повертає
                елемент  з  голови  та  видаляє  його  з  черги,  таким  чином
                встановлюючи голову на наступний за видаленим елемент та
                зменшуючи  довжину  на  одиницю.  При  намаганні  видалити
                елемент  з  пустої  черги,  виникає  ситуація  "незаповнення"
                (англ. queue underflow).
                    Приклад реалізації  черги на мові Джава:

               //Клас - елемент черги
               public class lineElement {
                   // число - корисна інформація
                                                                             61
   58   59   60   61   62   63   64   65   66   67   68