এই সমস্যায়, আমাদের একটি স্ট্রিং দেওয়া হয়েছে যাতে ডুপ্লিকেট অক্ষর থাকতে পারে। আমাদের কাজ হল স্ট্রিংগুলির সমস্ত স্বতন্ত্র স্থানান্তরগুলি মুদ্রণ করা৷
৷সমস্যাটি বোঝার জন্য একটি উদাহরণ নেওয়া যাক -
ইনপুট:স্ট্রিং ="XYZ"আউটপুট:XYZ XZY YXZ YZX ZYX ZXY
এই সমস্যাটি সমাধান করতে, আমাদের স্ট্রিংয়ের একটি উপাদান ঠিক করতে হবে। এবং তারপর স্ট্রিং এর সমস্ত উপাদান পুনরাবৃত্তি করুন।
উদাহরণ
আমাদের সমাধান বাস্তবায়নের জন্য প্রোগ্রাম,
#include#include namespace ব্যবহার করে std;int compare(const void*a, const void* b) { ফেরত (*(char*)a - *(char*)b); } void swapChar(char* a, char* b) { char t =*a; *a =*b; *b =t;}int findCeil(char str[], char first, int l, int h) { int ceilIndex =l; জন্য (int i =l + 1; i <=h; i++) যদি (str[i]> first &&str[i] =0; --i) যদি (str[i] আউটপুট
স্ট্রিংএসএনজিওয়াই-এর সমস্ত পারমুটেশন হল −GNSY GNYS GSNY GSYN GYNS GYSN NGSY NGYS NSGY NSYG NYGS NYSG SGNY SGYN SNGY SNYG SYGN SYNG YGNS YGSN YNGS YNSG YSGN>