সি প্রোগ্রামিং ভাষায়, বুদ্বুদ সাজানোর সহজতম কৌশল এবং একে এক্সচেঞ্জ সর্টও বলা হয়।
বাবল সাজানোর পদ্ধতি
-
তালিকার অবশিষ্ট উপাদানগুলির সাথে প্রথম উপাদানটির তুলনা করুন এবং যদি সেগুলি ক্রমানুসারে না থাকে তবে সেগুলি বিনিময় (অদলবদল) করুন৷
-
সমস্ত উপাদানগুলি সাজানো না হওয়া পর্যন্ত তালিকার অন্যান্য উপাদানগুলির জন্য একই পুনরাবৃত্তি করুন৷
অ্যালগরিদম
বুদবুদ সাজানোর কৌশল ব্যবহার করে সংখ্যার একটি প্রদত্ত তালিকাকে ক্রমবর্ধমান ক্রমে সাজানোর জন্য নিচে একটি অ্যালগরিদম দেওয়া হল -
ধাপ 1 - শুরু করুন
ধাপ 2 - তালিকা (অ্যারে), সংখ্যা নিন
ধাপ 3 - রিডলিস্ট(তালিকা, সংখ্যা)
পদক্ষেপ 4৷ − মুদ্রণ তালিকা(তালিকা, সংখ্যা)
ধাপ 5 − bub_sort(তালিকা, সংখ্যা)
ধাপ 6 − মুদ্রণ তালিকা(তালিকা, সংখ্যা)
পঠন তালিকা (তালিকা, সংখ্যা)
পদক্ষেপ 7 - থামুন
<পূর্ব>1. j =0 থেকে num2 এর জন্য। পঠিত তালিকা[j]।মুদ্রণ তালিকা(তালিকা, সংখ্যা)
<পূর্ব>1. j =0 থেকে num2 পর্যন্ত। তালিকা লিখুন[j]।bub_sort(তালিকা, সংখ্যা)
<পূর্ব>1. i =0 থেকে num2 এর জন্য। j =0 থেকে (সংখ্যা – i)3 এর জন্য। if( তালিকা[j]> তালিকা[j+1])4. swapList( তালিকার ঠিকানা[j], তালিকার ঠিকানা[j+1])swapList( তালিকার ঠিকানা[j], তালিকার ঠিকানা[j+1])
<পূর্ব>1. temp =তালিকার মান [j]2. তালিকায় মান [j] =তালিকায় মান [j+1]3। তালিকার মান [j+1] =tempউদাহরণ
বাবল সাজানোর কৌশল ব্যবহার করে ক্রমবর্ধমান ক্রমে সংখ্যার একটি প্রদত্ত তালিকা সাজাতে C প্রোগ্রামটি নিচে দেওয়া হল −
#include#define MAX 10void swapList(int *m,int *n){ int temp; temp =*m; *m =*n; *n =temp;}/* বাবল সাজানোর জন্য ফাংশন */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("\nউপাদানগুলি লিখুন:\n"); (j=0;j
আউটপুট
যখন উপরের প্রোগ্রামটি কার্যকর করা হয়, তখন এটি নিম্নলিখিত ফলাফল তৈরি করে -
উপাদানের সংখ্যা লিখুন10উপাদানগুলি লিখুন:11234513635691022বাছাই করার আগে তালিকার উপাদানগুলি হল:11 23 45 1 3 6 35 69 10 22 বাছাই করার পরে তালিকার উপাদানগুলি হল:1 3 6 10 226 11325>