কিউ বেসিক ডাটা স্ট্রাকচার

সামনে বাংলাদেশ প্রিমিয়ার লিগ এর খেলা, ব্যাংক এ টিকেট পাওয়া যাচ্ছে। তুমি সকাল সকাল ব্যাংক এর সামনে গেলে, গিয়ে দেখলে তোমাকে কাউন্টার এর সামনে দাড়াতে হবে। এখন নিয়ম হচ্ছে, কাউন্টার খালি থাকলে তুমি সবার প্রথমে দাঁড়াবে, আর তা না হলে , যারা দাড়িয়ে আছে তাদের একদম পিছনে দাড়াতে হবে। আর কাউন্টার থেকে প্রথমে যে আশবে , তাকে প্রথমে টিকেট দেয়া হবে। যে শেষে আশবে সে সবার শেষে টিকেট পাবে। হুম , আমাদের দৈনন্দিন জীবনে যেভাবে কোন সার্ভিস নেয়ার জন্য লাইনে দাঁড়াই , ব্যাপার টা আসলে তাই। এই লাইনে দাঁড়ানোর ব্যাপার টাই কিউ ডাটা স্ট্রাকচার প্রকাশ করে।

কিউ ডাটা স্ট্রাকচার এর ধর্ম

১। নতুন কোন ডাটা আশলে , পুরাতন ডাটা থাকলে তাদের সবার পিছনে থাকবে।

২। কোন ডাটা কে নিতে হলে, সবার প্রথমে যে ডাটা টি আসছিল তাকেই প্রথমে নিতে হবে, একে বলে First In First Out [FIFO] ।

কিউ এর অপারেশানঃ

১। Push: নতুন কোন ডাটা আনলে সবার শেষে রাখতে হবে।

২। Pop: কোন ডাটা নিতে হলে , সবার প্রথমে যে থাকবে তাকে নিতে হবে।

Human queue

Queue

কিউ এর সিমুলেশন

১। Push(1): ১ কিউ তে ঢুকাতে হবে।

কিউঃ ১

২। Push(2): ২ কিউ তে ঢুকাতে হবে

কিউঃ ১ ২

৩। Push(3): ৩ কিউ তে ঢুকাতে হবে

কিউঃ ১ ২ ৩

৪। Pop(): সবার আগে যে আছে, তাকে বের করে ফেলতে হবে , এক্ষেত্রে ১ বের হবে

কিউঃ ২ ৩

৫। pop(): এবার ও সবার আগে যে আছে, তাকে বের করতে হবে। এক্ষেত্রে ২ বের হবে।

কিউঃ ৩

৬। Push(4): ৪ কিউ তে ঢুকাতে হবে।

কিউঃ ৩ ৪

৭। Pop(): নিজে কর

৮। Push(6): নিজে কর।

অ্যালগোরিদম এনালাইসিস

Push আর Pop , O(1) এ করা যায়।

কিউ এর ব্যাবহার

Breadth First Search (Graph Algorithm) এ কিউ ব্যবহার করতে হয়। Operating System এ কিউ একটি প্রয়োজনীয় ডাটা স্ট্রাকচার