博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
LeetCode-77-Combinations
阅读量:6070 次
发布时间:2019-06-20

本文共 888 字,大约阅读时间需要 2 分钟。

算法描述:

Given two integers n and k, return all possible combinations of k numbers out of 1 ... n.

Example:

Input: n = 4, k = 2Output:[  [2,4],  [3,4],  [2,3],  [1,2],  [1,3],  [1,4],]

解题思路:题目要求给出所有肯能的组合,首先想到了回溯法。需要注意的是下一次迭代的起始是i+1,这样去除之前用过的数。

vector
> combine(int n, int k) { vector
> results; vector
temp; backtracking(results, temp, n, k, 1); return results; } void backtracking(vector
>& results, vector
& temp, int n, int k, int index){ if(temp.size() == k){ results.push_back(temp); return; } for(int i=index; i <= n; i++){ temp.push_back(i); backtracking(results, temp, n , k, i+1); temp.pop_back(); } }

 

转载于:https://www.cnblogs.com/nobodywang/p/10344792.html

你可能感兴趣的文章
net.sf.json.JSONObject的json字符串转对象
查看>>
回溯法
查看>>
大作业:电梯设计的概要设计文档
查看>>
扑克游戏
查看>>
Android之LayoutInflater详解
查看>>
BZOJ-3172: [Tjoi2013]单词 (AC自动姬 fail树)
查看>>
Java 集合深入理解(7):ArrayList
查看>>
qsort函数应用大全
查看>>
(2)Spring框架详解(Spring基础配置和开发步骤)
查看>>
Anyhashable打印格式化
查看>>
打理一下IOS项目中的图片资源
查看>>
Why C++ ? 王者归来(转载)
查看>>
Makefile
查看>>
如何做好子域名优化三大重点
查看>>
python argparse用法总结
查看>>
你必须知道的.net学习总结之继承
查看>>
Hadoop 系列YARN:资源调度平台(YARN的命令)
查看>>
java 短连接+MD5加密短链接
查看>>
基于mvc的javascript web富应用开发
查看>>
C#之接口定义与实现
查看>>