একটি ইন্টিজার কালেকশন দেওয়া আছে (ডুপ্লিকেট থাকতে পারে)। সব সম্ভাব্য ইউনিক পারমুটেশন বের করতে হবে।
উদাহরণ: [1,1,3] -> আউটপুট: [[1,1,3], [1,3,1], [3,1,1]]
সমাধান: রিকার্সিভ ব্যাকট্র্যাকিং। solve(nums, idx)। idx == size হলে রেজাল্টে যোগ। i=idx থেকে size-1 পর্যন্ত: nums[i]==nums[idx] এবং i!=idx হলে কন্টিনিউ। swap(nums[i], nums[idx]) করে রিকার্সিভ কল।
উদাহরণ (C++)
#include <bits/stdc++.h>
using namespace std;
void print_vector(vector<vector<int> > v){
cout << "[";
for(int i = 0; i
ইনপুট
[1,1,3]
আউটপুট
[[1,1,3],[1,3,1],[3,1,1]]