Queue (কিউ) হল একটি ডেটা স্ট্রাকচার যা FIFO (First In, First Out) পদ্ধতির উপর কাজ করে। এর মানে হল, যে উপাদানটি প্রথমে যুক্ত হয় সেটি প্রথমে অপসারণ হয়। কিউ সাধারণত বিভিন্ন ধরনের কাজের প্রক্রিয়াকরণের জন্য ব্যবহৃত হয়, যেখানে প্রক্রিয়াটি একটির পর একটি চলে।
১. Queue এর ধারণা
Queue হল একটি সুশৃঙ্খল ডেটা স্ট্রাকচার যা সাধারণত বিভিন্ন কাজের জন্য ব্যবহৃত হয়। কিউতে দুটি প্রধান অপারেশন রয়েছে:
- Enqueue: কিউয়ের শেষে একটি নতুন উপাদান যুক্ত করা।
- Dequeue: কিউয়ের শুরু থেকে একটি উপাদান অপসারণ করা।
২. Queue এর গঠন
কিউ সাধারণত দুটি সূচক ধারণ করে:
- Front: কিউয়ের প্রথম উপাদানের সূচক।
- Rear: কিউয়ের শেষ উপাদানের সূচক।
কিউ এর গঠন উদাহরণ:
#include <stdio.h>
#include <stdlib.h>
#define MAX 100 // Queue এর সর্বাধিক সাইজ
struct Queue {
int items[MAX]; // Queue উপাদানগুলির জন্য অ্যারে
int front; // Queue এর প্রথম উপাদানের ইনডেক্স
int rear; // Queue এর শেষ উপাদানের ইনডেক্স
};
৩. Queue এর প্রয়োগ
Queue এর বিভিন্ন ক্ষেত্রে ব্যবহারের উদাহরণ দেওয়া হলো:
প্রিন্টার কিউ:
- বিভিন্ন প্রিন্ট জব কিউয়ে রাখা হয়, এবং প্রথমে যে জবটি আসে সেটিই প্রথমে প্রিন্ট হয়।
প্রক্রিয়া কিউ:
- অপারেটিং সিস্টেমে বিভিন্ন প্রক্রিয়া বা থ্রেড কিউয়ে রাখা হয়। CPU প্রথমে যে প্রক্রিয়া চালাবে সেটি কিউয়ের শীর্ষে থাকে।
কাস্টমার সার্ভিস:
- ব্যাংক বা রেস্তোরাঁয় কাস্টমারদের সার্ভিস দেওয়ার সময় কাস্টমার কিউয়ে দাঁড়িয়ে থাকেন এবং প্রথমে যে কাস্টমার আসবে সেটিই প্রথমে সার্ভিস পাবে।
ডেটা ট্রান্সমিশন:
- নেটওয়ার্কের মধ্যে প্যাকেট ট্রান্সমিশন কিউয়ে রাখা হয় যাতে প্রথমে আসা প্যাকেটটি প্রথমে প্রেরণ করা হয়।
ব্যাকগ্রাউন্ড টাস্ক:
- ব্যাকগ্রাউন্ড টাস্ক বা কলব্যাক ফাংশন কিউয়ের মাধ্যমে পরিচালনা করা হয়।
Content added By
Read more