請教一個切片遞迴賦值的問題
一個全排列的問題,我按下面的程式碼執行存進去的是最後遞迴出來的陣列,求怎麼解決啊。
package main
import "fmt"
func swap(nums []int, i, j int) {
temp := nums[i]
nums[i] = nums[j]
nums[j] = temp
}
func permute(nums []int) [][]int {
length := len(nums) - 1
var res [][]int
dfs1(nums, 0, length, &res)
fmt.Println(res)
return res
}
func dfs1(nums []int, cur, end int, res *[][]int) {
if cur == end {
fmt.Println(nums)
*res = append(*res, nums)
fmt.Println("nums", res)
return
} else {
for i := cur; i <= end; i++ {
swap(nums, cur, i)
dfs1(nums, cur+1, end, res)
swap(nums, cur, i)
}
}
}
func main() {
nums := []int{4, 5, 6}
permute(nums)
}
[4 5 6] nums &[[4 5 6]] [4 6 5] nums &[[4 6 5] [4 6 5]] [5 4 6] nums &[[5 4 6] [5 4 6] [5 4 6]] [5 6 4] nums &[[5 6 4] [5 6 4] [5 6 4] [5 6 4]] [6 5 4] nums &[[6 5 4] [6 5 4] [6 5 4] [6 5 4] [6 5 4]] [6 4 5] nums &[[6 4 5] [6 4 5] [6 4 5] [6 4 5] [6 4 5] [6 4 5]] [[4 5 6] [4 5 6] [4 5 6] [4 5 6] [4 5 6] [4 5 6]]
更多原創文章乾貨分享,請關注公眾號
- 加微信實戰群請加微信(註明:實戰群):gocnio
相關文章
- 請教一個go切片引用的問題Go
- 請教一個問題,
- 請教一個struct tag的問題Struct
- 請教一個演算法問題演算法
- 請教一個 python 包安裝的問題Python
- 列表切片賦值給另一個變數賦值變數
- 請教個問題執行 httprunner 遇到的問題HTTP
- 請教一個讓我這個菜雞不解的問題
- 遞迴問題遞迴
- 請教phpword問題PHP
- 想請教一下各位一個介面寫法問題
- 請教各位一個關於websocket協議開發的問題Web協議
- 樹遞迴問題的求解遞迴
- 請教Beego Router 問題Go
- 關於一個迴圈請求與迴圈計時器的問題
- 請問一個 authorize的問題
- python的賦值傳遞Python賦值
- 請教一個關於不確定條件個數搜尋的問題
- 能取值亦能賦值的Python切片賦值Python
- 遞迴-*全排列問題遞迴
- 遞迴路徑問題遞迴
- 揹包問題的遞迴與非遞迴演算法遞迴演算法
- 一個vuepress配置問題,引發的js遞迴演算法思考VueJS遞迴演算法
- 如何向大牛請教問題?
- Proxy Authorization Required 問題請教UI
- 請教 TensorFlow 安裝問題
- 遞迴中的遞推與迴歸以及返回值和函式儲存的問題(以階乘問題進行討論)遞迴函式
- 請教各位大佬一個問題,flutter APP 怎麼抓包呢?FlutterAPP
- 列表切片賦值給另一個變數,淺拷貝原理解析賦值變數
- hdu2048遞迴問題遞迴
- hdu2049遞迴問題遞迴
- skywalking-agent 自定義外掛的幾個問題想請教一下
- shell 變數賦值問題變數賦值
- 遞迴求解漢諾塔問題遞迴
- 遞迴解決全排列問題遞迴
- 如何解決自增列賦值的問題賦值
- 請教一下,UI 自動化選型問題UI
- 請教您關於 Nginx 下多個 Laravel 專案的部署問題NginxLaravel