题解 | #没有重复项数字的全排列#
没有重复项数字的全排列
https://www.nowcoder.com/practice/4bcf3081067a4d028f95acee3ddcd2b1
利用内置函数减少代码量
- 缺点是目前不支持slices包的函数
func permute(num []int) [][]int { // write code here var dfs func(arr []int) var ans [][]int l := len(num) dfs = func(arr []int) { if len(arr) == l { ans = append(ans, arr) } for i := 0; i < len(num); i++ { if slices.Contains(arr, num[i]) { continue } dfs(append(arr, num[i])) } } dfs([]int{}) return ans }