Sobes.tech
Junior

Mis on järjekord programmeerimise kontekstis?

sobes.tech AI

Vastus AI-lt

Järjekord (Queue) on abstraktne andmetüüp, mis rakendab FIFO (First-In, First-Out) põhimõtet, kus esimene lisatud element on esimene eemaldatav.

Põhitoimingud:

  • Enqueue: Elementi lisamine järjekorra lõppu.
  • Dequeue: Elementi eemaldamine järjekorra algusest.
  • Peek/Front: Elementi väärtuse saamine järjekorra algusest ilma selle eemaldamiseta.
  • IsEmpty: Kontroll, kas järjekord on tühi.
  • Size: Praeguse elementide arvu saamine järjekorras.

Näited kasutusest:

  • Tööde haldamine operatsioonisüsteemides.
  • Päringute töötlemine veebiserverites.
  • Graafide läbimise algoritmid (BFS - Breadth-First Search).
  • Andmete järjestikuseks töötlemiseks mõeldud buferid.

Rakendus võib põhineda massiividel või seotud nimekirjadel.

# Näide, kuidas rakendada järjekorda, kasutades Python'i nimekirja
class Queue:
    def __init__(self):
        self.items = []

    def is_empty(self):
        return self.items == []

    def enqueue(self, item):
        self.items.append(item) # Lisada lõppu

    def dequeue(self):
        if not self.is_empty():
            return self.items.pop(0) # Eemaldada algusest
        return None

    def peek(self):
        if not self.is_empty():
            return self.items[0]
        return None

    def size(self):
        return len(self.items)