[Day42]-[回溯]- 组合
作者:方勇(gopher)
- 2022 年 5 月 18 日
本文字数:327 字
阅读完需:约 1 分钟
77. 组合
给定两个整数
n和k,返回范围[1, n]中所有可能的k个数的组合。你可以按 任何顺序 返回答案。
示例 1:
输入:n = 4, k = 2输出:[ [2,4], [3,4], [2,3], [1,2], [1,3], [1,4],]复制代码
示例 2:
输入:n = 1, k = 1输出:[[1]]复制代码
题解:
func TestCombine(t *testing.T) { var res [][]int var trackBack func(n, k, start int, trace []int) trackBack = func(n, k, start int, trace []int) { if len(trace) == k { res = append(res, append([]int{}, trace...)) return } for i := start; i <= n; i++ { trace = append(trace, i) trackBack(n, k, i+1, trace) trace = trace[:len(trace)-1] } } trackBack(4, 2, 1, []int{}) t.Log(res)}复制代码
划线
评论
复制
发布于: 刚刚阅读数: 2
方勇(gopher)
关注
Dead or Alive. 生存战斗是知识的源泉! 2018.11.08 加入
我是一名SRE哨兵,目前是好大夫基础架构部高级工程师。专注于 SRE,微服务、中间件的稳定性和可用性建设,整体负责好大夫服务治理云平台的设计和搭建!










评论