Description
Given a string, find all permutations of it without duplicates.
Example
Example 1:
Input: "abb"
Output:
["abb", "bab", "bba"]
Example 2:
Input: "aabb"
Output:
["aabb", "abab", "baba", "bbaa", "abba", "baab"]
思路:
基本上和Permutation实现的思路一样,不同的是string的特性,不能直接append 还有pop,也传导的不是reference,所以不需要deepcopy,还有判断是否加一个数进入Permutation的顺序影响时间复杂度, if visited 在前面不会超时。
代码:
关于最后加元素进Permutation和移除元素进permutation 有两种方法,一种是直接在传参数的时候加,这样后面不需要移除元素, 另一种是在传参前加传参后移除。
这是不需要移除的
这是需要移除的
网友评论