কম্পিউটার টিউটোরিয়াল

জাভাস্ক্রিপ্টে PriorityQueue-এ Clear অপারেশন


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 = [] সবচেয়ে পঠনীয় এবং সাধারণত ব্যবহৃত।

  1. জাভাস্ক্রিপ্টে PriorityQueue-এ Dequeue (Remove) অপারেশন

  2. জাভাস্ক্রিপ্টে লিংকড লিস্টে এলিমেন্ট যোগ করা (Insert)

  3. জাভাস্ক্রিপ্টে 'new' অপারেটর ব্যবহার করে কনস্ট্রাক্টর তৈরির পদ্ধতি

  4. জাভাস্ক্রিপ্টে splice() মেথড ব্যবহার করে এলিমেন্ট রিমুভ করার পদ্ধতি