1 Star 0 Fork 0

HanYong/leetcode

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
78.子集.go 650 Bytes
一键复制 编辑 原始数据 按行查看 历史
HanYong 提交于 2022-02-26 17:56 . subsets
/*
* @lc app=leetcode.cn id=78 lang=golang
*
* [78] 子集
*/
// @lc code=start
func subsets(nums []int) (res [][]int) {
res = append(res, make([]int, 0))
var combine func(nums []int, k int) (ans [][]int)
combine = func(nums []int, k int) (ans [][]int) {
if k == 1 {
for i := 0; i < len(nums); i++ {
ans = append(ans, []int{nums[i]})
}
return
}
for i := 0; i < len(nums); i++ {
temp := combine(nums[i+1:], k-1)
for _, v := range temp {
ans = append(ans, append([]int{nums[i]}, v...))
}
}
return
}
for i := 1; i <= len(nums); i++ {
res = append(res, combine(nums, i)...)
}
return
}
// @lc code=end
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/yinhu000/leetcode.git
[email protected]:yinhu000/leetcode.git
yinhu000
leetcode
leetcode
master

搜索帮助