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

বাবল সোর্ট ব্যবহার করে সংখ্যা অ্যারের ক्रमবিন্যাস করার সি প্রোগ্রাম

সি প্রোগ্রামিং ভাষায়, বাবল সোর্ট হল সবচেয়ে সহজ সোর্টিং টেকনিক এবং এক্সচেঞ্জ সোর্ট হিসেও ডাকা হয়।

বাবল সোর্টের প্রসিডিউর

  • প্রথম এলিমেন্টটি বাকি এলিমেন্টসের সাথে তুলনা করুন এবং অর্ডার না থাকলে এক্সচেঞ্জ (সওয়াপ) করুন।

  • লিস্টের অন্যান্য এলিমেন্টসের জন্যও একই প্রক্রিয়া রিপিট করুন যতক্ষণ না সব এলিমেন্ট সোর্ট হয়।

অ্যালগরিদম

বাবল সোর্ট টেকনিক ব্যবহার করে সংখ্যা লিস্টকে অ্যাসেন্ডিং অর্ডারে সোর্ট করার অ্যালগরিদম নিচে দেওয়া হল:

Step 1 − Start

Step 2 − Take list(array), num

Step 3 − readlist(list,num)

Step 4 − printlist(list,num)

Step 5 − bub_sort(list,num)

Step 6 − printlist(list,num)

readlist (list, num)

Step 7 − stop

1. for j = 0 to num 2. read list[j].

printlist(list,num)

1. for j =0 to num 2. write list[j].

bub_sort(list,num)

1. for i = 0 to num 2. for j =0 to (num – i) 3. if( list[j] > list[j+1]) 4. swapList( address of list[j], address of list[j+1])

swapList( address of list[j], address of list[j+1])

1. temp = value at list[j] 2. value at list[j] = value at list[j+1] 3. value at list[j+1] = temp

উদাহরণ

বাবল সোর্ট টেকনিক ব্যবহার করে সংখ্যা লিস্টকে অ্যাসেন্ডিং অর্ডারে সোর্ট করার সি প্রোগ্রাম:

#include <stdio.h> #define MAX 10 void swapList(int *m,int *n){     int temp;     temp = *m;     *m = *n;     *n = temp; } /* Function for Bubble Sort */ void bub_sort(int list[], int n){     int i,j;     for(i=0;i<(n-1);i++)         for(j=0;j<(n-(i+1));j++)             if(list[j] > list[j+1])                 swapList(&list[j],&list[j+1]);     }     void readlist(int list[],int n){     int j;     printf("\nEnter the elements: \n");     for(j=0;j<n;j++)         scanf("%d",&list[j]);     }     /* Showing the contents of the list */     void printlist(int list[],int n){         int j;         for(j=0;j<n;j++)         printf("%d\t",list[j]); } void main(){     int list[MAX], num;     printf(" Enter the number of elements \n");     scanf("%d",&num);     readlist(list,num);     printf("\n\nElements in the list before sorting are:\n");     printlist(list,num);     bub_sort(list,num);     printf("\n\nElements in the list after sorting are:\n");     printlist(list,num); }

আউটপুট

Enter the number of elements 10 Enter the elements: 11 23 45 1 3 6 35 69 10 22 Elements in the list before sorting are: 11 23 45 1 3 6 35 69 10 22 Elements in the list after sorting are: 1 3 6 10 11 22 23 35 45 69
  1. C প্রোগ্রাম: রিকার্সিভ বাবল সর্ট

  2. সিংলি লিংকড লিস্টে সংখ্যা রিভার্স আর্ডারে ডিসপ্লে করার C প্রোগ্রাম

  3. স্ট্রাকচার ব্যবহার করে নাম アルফাবেটিক্যালি সাজানোর C প্রোগ্রাম

  4. নন-রিকার্সিভ ফাংশন ব্যবহার করে GCD বের করার সি প্রোগ্রাম