-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Description
package main
import (
"fmt"
)
var ret [][]int = make([][]int, 2)
var count = 0
func permute(nums []int) [][]int {
dfs(nums, 0, len(nums))
return ret
}
func swap(a int, b int) {
tmp := a
a = b
b = tmp
}
func dfs(array []int, index int, length int) {
// fmt.Println(index)
if index == length-1 {
// for i := 0; i < length; i++ {
// // ret[count][i] = array[i]
// }
ret[count] = array
fmt.Println(array)
fmt.Println(count)
count++
return
}
for i := index; i < length; i++ {
// cout<<"index1"<<index<<endl;
// cout<<"i"<<i<<endl;
// swap(array[i], array[index])
tmp := array[i]
array[i] = array[index]
array[index] = tmp
// if(array[i]!=array[index]);
dfs(array, index+1, length)
// swap(array[i], array[index])
tmp1 := array[i]
array[i] = array[index]
array[index] = tmp1
}
}
func main() {
// m := make(map[string]int)
// m["a"] = 1
// fmt.Println(m["a"])
// m["b"]++
// fmt.Println(m["b"])
// fmt.Println(len(m))
// var arr []int = []int{-2, 1, -3, 4, -1, 2, 1, -5, 4}
// var arr []int = []int{2, 2}
var arr []int = []int{1, 2}
fmt.Println(permute(arr))
}
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels