PriorityQueue: Clear Operation (সব এলিমেন্ট মুছে ফেলা)
Clear অপারেশন প্রায়োরিটি কিউর সব এলিমেন্ট একসাথে মুছে ফেলে এবং কিউকে খালি অবস্থায় ফেরত আনে।
Clear মেথড ইমপ্লিমেন্টেশন
class PriorityQueue {
constructor(maxSize = 10) {
this.maxSize = maxSize;
this.container = [];
}
// ... enqueue, dequeue, peek, isEmpty, isFull, display ...
// Clear Operation
clear() {
this.container = []; // নতুন খালি অ্যারে অ্যাসাইন
}
}
টেস্টিং উদাহরণ
const pq = new PriorityQueue(10);
pq.enqueue("Task A", 3);
pq.enqueue("Task B", 1);
pq.enqueue("Task C", 5);
console.log("Before clear:");
pq.display();
// [ { data: 'Task B', priority: 1 },
// { data: 'Task A', priority: 3 },
// { data: 'Task C', priority: 5 } ]
pq.clear();
console.log("After clear:");
pq.display(); // []
console.log("Is Empty:", pq.isEmpty()); // true
console.log("Size:", pq.size()); // 0
আউটপুট
Before clear:
[ { data: 'Task B', priority: 1 }, { data: 'Task A', priority: 3 }, { data: 'Task C', priority: 5 } ]
After clear:
[ ]
Is Empty: true
Size: 0
Clear Implementation Options
// ১. নতুন অ্যারে অ্যাসাইন (Recommended - Simple, GC handles old array)
clear() {
this.container = [];
}
// ২. Length = 0 (Fast, same array reference)
clear() {
this.container.length = 0;
}
// ৩. Splice (Explicit)
clear() {
this.container.splice(0, this.container.length);
}
সব পদ্ধতির ফলাফল একই: কিউ খালি হয়। this.container = [] সবচেয়ে পঠনীয় এবং সাধারণত ব্যবহৃত।