Junior — Middle
JavaScriptda navbat ma'lumotlar tuzilmasini qanday amalga oshirish mumkin?
sobes.tech AI
AIdan javob
JavaScript'ta navbat, massiv yordamida, push metodidan foydalanib oxiriga qo'shish va shift metodidan foydalanib boshidan olib tashlash orqali amalga oshirilishi mumkin, bu FIFO (First In, First Out) tamoyiliga mos keladi.
Oddiy navbatni amalga oshirish misoli:
class Queue {
constructor() {
this.items = [];
}
enqueue(element) {
this.items.push(element); // oxiriga qo'shish
}
dequeue() {
if(this.isEmpty()) {
return null;
}
return this.items.shift(); // boshidan olib tashlash
}
isEmpty() {
return this.items.length === 0;
}
peek() {
return this.isEmpty() ? null : this.items[0];
}
}
// Foydalanish:
const queue = new Queue();
queue.enqueue(1);
queue.enqueue(2);
console.log(queue.dequeue()); // 1
console.log(queue.peek()); // 2
Yana samaraliroq amalga oshirish uchun (elementlarni shift bilan siljitishni oldini olish uchun) bog'langan ro'yxat yoki ikkita indeks bilan navbatni amalga oshirish mumkin.