কম্পিউটার

আভিধানিকভাবে C++ এর পরবর্তী স্থানান্তর


এখানে আমরা C++-এ একটি স্ট্রিং-এর পরবর্তী পারমুটেশন কীভাবে তৈরি করতে হয় তা দেখব। অভিধানগতভাবে পরবর্তী স্থানান্তরটি মূলত বৃহত্তর স্থানান্তর। উদাহরণস্বরূপ, “ACB”-এর পরেরটি হবে “BAC”। কিছু কিছু ক্ষেত্রে, আভিধানিকভাবে পরবর্তী পারমুটেশন নেই, যেমন "BBB" বা "DCBA" ইত্যাদি।

C++ এ আমরা next_permutation() নামক একটি লাইব্রেরি ফাংশন ব্যবহার করে এটি করতে পারি। এটি অ্যালগরিদম হেডার ফাইলে উপস্থিত রয়েছে৷

উদাহরণ

#include <iostream>
#include <algorithm>
using namespace std;
main() {
   string s = "DBAC";
   for(int i = 0; i<5; i++) {
      bool val = next_permutation(s.begin(), s.end());
      if (val == false) {
         cout << "No next permutation" << endl;
         break;
      } else
      cout << "Next: " << s << endl;
   }
}

আউটপুট

Next: DBCA
Next: DCAB
Next: DCBA
No next permutation

  1. C++ এ পারমুটেশন সিকোয়েন্স

  2. C++ এ পার্টিশন তালিকা

  3. C++ এ কুৎসিত সংখ্যা

  4. পাইথনে পরবর্তী পারমুটেশন