সাইকেল সর্ট হল একটি ইন-প্লেস বাছাই অ্যালগরিদম৷ এটি একটি তুলনা ভিত্তিক বাছাই এবং অন্য যেকোনো ইন-প্লেস বাছাই কৌশলের জন্য দক্ষ। এটি সাজানোর কাজগুলি সম্পাদন করার জন্য ন্যূনতম মেমরি লেখার সংখ্যা খুঁজে পায়৷
সাইকেল সাজানোর কৌশলের জটিলতা
- সময়ের জটিলতা:O(n^2)
- স্পেস জটিলতা:O(1)
ইনপুট এবং আউটপুট
ইনপুট:সাজানো না হওয়া ডেটার একটি তালিকা:23 63 98 74 20 14 36 45 99 78 আউটপুট:সাজানোর আগে অ্যারে:23 63 98 74 20 14 36 45 99 78 সাজানোর পরে অ্যারে:26 63 74 394 394 /প্রে>অ্যালগরিদম
সাইকেল সাজান(অ্যারে, আকার)ইনপুট - ডেটার একটি অ্যারে, এবং অ্যারের মোট সংখ্যা
আউটপুট - সাজানো অ্যারে
শুরু করার জন্য শুরু করুন :=0 থেকে n – 2 do key :=array[start] location :=start for i :=start + 1 থেকে n-1 করতে হবে যদি অ্যারে[i] <কী তারপর অবস্থান:=অবস্থান + 1 সম্পন্ন হলে অবস্থান =শুরু তারপর নিম্ন অংশ উপেক্ষা করুন, পরবর্তী পুনরাবৃত্তির জন্য যান যখন কী =অ্যারে [অবস্থান] অবস্থান করুন :=অবস্থান +1 সম্পন্ন হলে অবস্থান ≠ শুরু হলে কী দিয়ে অ্যারে [অবস্থান] সোয়াপ করুন যখন অবস্থান ≠ অবস্থান শুরু করুন :=start for i :=start + 1 থেকে n-1 do if array[i]উদাহরণ
#includeনেমস্পেস ব্যবহার করে std;void সোয়াপিং(int &a, int &b) {//a এবং b int temp-এর বিষয়বস্তু অদলবদল করুন; temp =a; a =b; b =temp;} void display(int *array, int size) { for(int i =0; i > n; int arr[n]; //প্রদত্ত সংখ্যক উপাদান সহ একটি অ্যারে তৈরি করুন cout <<"এন্টার উপাদান:" < > arr[i]; } cout <<"বাছাই করার আগে অ্যারে:"; প্রদর্শন (arr, n); cycleSort(arr, n); cout <<"বাছাই করার পরে অ্যারে:"; প্রদর্শন(arr, n);} আউটপুট
<প্রে> উপাদানের সংখ্যা লিখুন:10 উপাদানগুলি লিখুন:23 63 98 74 20 14 36 45 99 78 সাজানোর আগে অ্যারে:23 63 98 74 20 14 36 45 99 78 সাজানোর পরে অ্যারে:74 26 39 34 প্রাক>