কম্পিউটার

সি ভাষায় সারিতে সন্নিবেশ করা উপাদানগুলি কী কী?


ডাটা স্ট্রাকচার হল স্ট্রাকচার্ড পদ্ধতিতে সংগঠিত ডাটার সংগ্রহ। নীচে ব্যাখ্যা করা হিসাবে এটি দুটি প্রকারে বিভক্ত -

  • লিনিয়ার ডেটা স্ট্রাকচার - ডেটা একটি লিনিয়ার ফ্যাশনে সংগঠিত হয়। উদাহরণস্বরূপ, অ্যারে, স্ট্রাকচার, স্ট্যাক, সারি, লিঙ্ক করা তালিকা।

  • অরৈখিক ডেটা কাঠামো - ডেটা একটি ক্রমানুসারে সংগঠিত হয়। উদাহরণস্বরূপ, গাছ, গ্রাফ, সেট, টেবিল।

সারি

এটি একটি রৈখিক ডেটা স্ট্রাকচার, যেখানে সন্নিবেশটি পিছনের প্রান্তে করা হয় এবং সামনের প্রান্তে মুছে ফেলা হয়৷

সি ভাষায় সারিতে সন্নিবেশ করা উপাদানগুলি কী কী?

সারির ক্রম হল FIFO – ফার্স্ট ইন ফার্স্ট আউট

অপারেশনস

  • ঢোকান - একটি সারিতে একটি উপাদান সন্নিবেশ করান।
  • মুছুন - সারি থেকে একটি উপাদান মুছে ফেলা।

শর্তগুলি

  • সারি ওভার প্রবাহ − একটি সম্পূর্ণ সারিতে একটি উপাদান সন্নিবেশ করার চেষ্টা করা হচ্ছে৷

  • প্রবাহের অধীনে সারি − একটি খালি সারি থেকে একটি উপাদান মুছে ফেলার চেষ্টা করা হচ্ছে৷

অ্যালগরিদম

নিচে সন্নিবেশ ( ) এর জন্য একটি অ্যালগরিদম দেওয়া হল৷ −

  • সারি ওভারফ্লো পরীক্ষা করুন।
if (r==n)
printf ("Queue overflow")
  • অন্যথায়, সারিতে একটি উপাদান প্রবেশ করান।
q[r] = item
r++

প্রোগ্রাম

সারিতে উপাদান সন্নিবেশ করার জন্য C প্রোগ্রামটি নিচে দেওয়া হল -

#include <stdio.h>
#define MAX 50
void insert();
int array[MAX];
int rear = - 1;
int front = - 1;
main(){
   int add_item;
   int choice;
   while (1){
      printf("1.Insert element to queue \n");
      printf("2.Display elements of queue \n");
      printf("3.Quit \n");
      printf("Enter your choice : ");
      scanf("%d", &choice);
      switch (choice){
         case 1:
            insert();
         break;
         case 2:
            display();
         break;
         case 3:
            exit(1);
         default:
         printf("Wrong choice \n");
      }
   }
}
void insert(){
   int add_item;
   if (rear == MAX - 1)
      printf("Queue Overflow \n");
   else{
      if (front == - 1)
         /*If queue is initially empty */
         front = 0;
         printf("Inset the element in queue : ");
         scanf("%d", &add_item);
         rear = rear + 1;
         array[rear] = add_item;
      }
}
void display(){
   int i;
   if (front == - 1)
      printf("Queue is empty \n");
   else{
      printf("Queue is : \n");
      for (i = front; i <= rear; i++)
         printf("%d ", array[i]);
      printf("\n");
   }
}

আউটপুট

যখন উপরের প্রোগ্রামটি কার্যকর করা হয়, তখন এটি নিম্নলিখিত ফলাফল তৈরি করে -

1.Insert element to queue
2.Display elements of queue
3.Quit
Enter your choice: 1
Inset the element in queue: 34
1.Insert element to queue
2.Display elements of queue
3.Quit
Enter your choice: 1
Inset the element in queue: 24
1.Insert element to queue
2.Display elements of queue
3.Quit
Enter your choice: 2
Queue is:
34 24
1.Insert element to queue
2.Display elements of queue
3.Quit
Enter your choice: 3

  1. সি ভাষায় উদাহরণ সহ ধ্রুবকগুলি কী কী?

  2. সি টোকেন কি?

  3. সি ভাষায় শিফট অপারেশন কি কি?

  4. সি ভাষায় বিভিন্ন অনুসন্ধান কৌশল কি কি?