Given a collection of numbers that might contain duplicates, return all possible unique permutations.
For example,
[1,1,2] have the following unique permutations:
[ [1,1,2], [1,2,1], [2,1,1] ]<Solution>
Permutations 的衍生題,差別在於可能會有重複的數字
最簡單的解法,還是使用 next_permutation,而且速度還很快 (30/30 test cases, 23ms, 86.19%)
code 如下
那當然也可以用 DFS 來解,只是要修改一下
- 用 set 來濾掉重複的答案
- 不用去 swap 同樣數值的位置
光用 set 其實就可以得到正解,不去 swap 同樣數值,是用來加速的
c++
kotlin
沒有留言:
張貼留言