处理一个二维数组, 在二维数组每个元素中加入一个数字7, 并再append 到原来数组, 输出的结果不对呀?
[9 0 3 5] 元素变成了 [9 0 3 7] 看输出截图
只看我备注下面的代码逻辑就行了
例子:
[[1],[2],[1,2]]
=> [[1],[2],[1,2], [1,7],[2,7],[1,2,7]]
代码如下
func main(){
subsets([]int{9, 0, 3, 5, 7})
}
func subsets(nums []int) [][]int {
var res = make([][]int, 0)
res = append(res, []int{})
for i := 0; i < 4; i++ {
for _, v := range res {
res = append(res, append(v, nums[i]))
}
}
//只看下面的逻辑就行
fmt.Println(res)
for _, v := range res {
res = append(res, append(v, 7))
}
fmt.Println(res)
return res
}
输出:
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…