Junior
Kas ir rinda programmēšanas kontekstā?
sobes.tech AI
Atbilde no AI
Rinda (Queue) ir abstrakts datu tips, kas īsteno FIFO (First-In, First-Out) principu, kur pirma pievienotais elementiem ir pirma izņemtie.
Galvenās operācijas:
- Enqueue: Elementa pievienošana rindas galā.
- Dequeue: Elementa izņemšana no rindas sākuma.
- Peek/Front: Elementa vērtības iegūšana rindas sākumā bez izņemšanas.
- IsEmpty: Pārbaude, vai rinda ir tukša.
- Size: Pašreizējā elementu skaita iegūšana rindā.
Piemēri:
- Uzdevumu pārvaldība operētājsistēmās.
- Pieprasījumu apstrāde tīmekļa serveros.
- Grafu pārvietošanas algoritmi (BFS - Breadth-First Search).
- Datu secīgai apstrādei paredzēti buferi.
Īstenojums var būt balstīts uz masīviem vai saistītām sarakstēm.
# Piemērs, kā īstenot rindu, izmantojot sarakstu Python
class Queue:
def __init__(self):
self.items = []
def is_empty(self):
return self.items == []
def enqueue(self, item):
self.items.append(item) # Pievienot beigās
def dequeue(self):
if not self.is_empty():
return self.items.pop(0) # No sākuma izņemt
return None
def peek(self):
if not self.is_empty():
return self.items[0]
return None
def size(self):
return len(self.items)