Junior
Kas yra eilė programavimo kontekste?
sobes.tech AI
Atsakymas iš AI
Eilė (Queue) yra abstraktus duomenų tipas, kuris įgyvendina FIFO (First-In, First-Out) principą, kur pirmas pridėtas elementas bus pirmas išimtas.
Pagrindinės operacijos:
- Enqueue: Elemento pridėjimas į eilės pabaigą.
- Dequeue: Elemento išėmimas iš eilės pradžios.
- Peek/Front: Gauti elemento reikšmę eilės pradžioje be jo išėmimo.
- IsEmpty: Patikrinti, ar eilė yra tuščia.
- Size: Gauti esamą elementų skaičių eilėje.
Pavyzdžiai:
- Užduočių valdymas operacinėse sistemose.
- Užklausų apdorojimas žiniatinklio serveriuose.
- Grafo apėjimo algoritmai (BFS - Breadth-First Search).
- Duomenų sekvinė apdorojimo buferiai.
Įgyvendinimas gali būti pagrįstas masyvais arba susietais sąrašais.
# Pavyzdys, kaip įgyvendinti eilę naudojant sąrašą Python
class Queue:
def __init__(self):
self.items = []
def is_empty(self):
return self.items == []
def enqueue(self, item):
self.items.append(item) # Pridėti į pabaigą
def dequeue(self):
if not self.is_empty():
return self.items.pop(0) # Pašalinti iš pradžios
return None
def peek(self):
if not self.is_empty():
return self.items[0]
return None
def size(self):
return len(self.items)