Junior — Middle
Kā JavaScript var īstenot rindas datu struktūru?
sobes.tech AI
Atbilde no AI
JavaScript valodā rindas var realizēt, izmantojot masīvu, izmantojot push metodi, lai pievienotu beigās, un shift metodi, lai noņemtu sākumā, kas atbilst FIFO (First In, First Out) principam.
Vienkāršas rindas realizācijas piemērs:
class Queue {
constructor() {
this.items = [];
}
enqueue(element) {
this.items.push(element); // pievienot beigās
}
dequeue() {
if(this.isEmpty()) {
return null;
}
return this.items.shift(); // noņemt sākumā
}
isEmpty() {
return this.items.length === 0;
}
peek() {
return this.isEmpty() ? null : this.items[0];
}
}
// Lietošana:
const queue = new Queue();
queue.enqueue(1);
queue.enqueue(2);
console.log(queue.dequeue()); // 1
console.log(queue.peek()); // 2
Lai efektīvāk realizētu (lai izvairītos no elementu pārvietošanas ar shift) var izmantot saistītu sarakstu vai realizēt rindu ar diviem indeksiem.