当前位置: 首页 > news >正文

广西南宁建设职业学图书馆网站做研究的网站

广西南宁建设职业学图书馆网站,做研究的网站,怎么注册公司的流程和费用,wordpress 电影下载站源码目录 【力扣】77. 组合题解回溯回溯法三步剪枝优化 【力扣】77. 组合 给定两个整数 n 和 k#xff0c;返回范围 [1, n] 中所有可能的 k 个数的组合。你可以按任何顺序返回答案。 示例 1#xff1a; 输入#xff1a;n 4, k 2 输出#xff1a; [[2,4],[3,4],[2,3],[1,2]… 目录 【力扣】77. 组合题解回溯回溯法三步剪枝优化 【力扣】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]]提示 1 n 20 1 k n 题解 暴力思考k 等于多少就是多少层循环。 //示例中k为2 int n 4; for (int i 1; i n; i) {for (int j i 1; j n; j) { sout(i j);} }//示例中k为3 int n 100; for (int i 1; i n; i) {for (int j i 1; j n; j) {for (int u j 1; u n; n) {sout(i j u);}} }回溯 回溯法解决的问题都可以抽象为树形结构N叉树。 n 相当于树的宽度k 相当于树的深度。图中每次搜索到了叶子节点就找到了一个结果。 回溯法三步 递归函数的返回值以及参数 回溯函数终止条件 单层搜索的过程 void backtracking(参数) {if (终止条件) {存放结果;return;}for (选择本层集合中元素树中节点孩子的数量就是集合的大小) {处理节点;backtracking(路径选择列表); // 递归回溯撤销处理结果} }import java.util.*;public class Solution {ListListInteger result new ArrayList();LinkedListInteger path new LinkedList();public ListListInteger combine(int n, int k) {backtracking(n, k, 1);return result;}public void backtracking(int n, int k, int startIndex) {// 终止条件if (path.size() k) {//存放结果result.add(new ArrayList(path));return;}//横向遍历for (int i startIndex; i n; i) {//处理节点path.add(i);//纵向搜索backtracking(n, k, i 1);//回溯撤销处理结果path.removeLast();}} }剪枝优化 剪枝的地方就在递归中每一层的for循环所选择的起始位置。如果 for 循环选择的起始位置之后的元素个数已经不足需要的元素个数那么就没有必要搜索了。 已经选择的元素个数path.size();还需要的元素个数为: k - path.size();在集合 n 中至多要从该起始位置 : n - (k - path.size()) 1开始遍历 for (int i startIndex; i n - (k - path.size()) 1; i) // i为本次搜索的起始位置import java.util.*;public class Solution {ListListInteger result new ArrayList();LinkedListInteger path new LinkedList();public ListListInteger combine(int n, int k) {backtracking(n, k, 1);return result;}public void backtracking(int n , int k, int startIndex) {// 终止条件if (path.size() k) {//存放结果result.add(new ArrayList(path));return;}//横向遍历for (int i startIndex; i n - (k - path.size()) 1; i) {// i为本次搜索的起始位置//处理节点path.add(i);//纵向搜索backtracking(n, k, i 1);//回溯撤销处理结果path.removeLast();}} }
http://www.yutouwan.com/news/215196/

相关文章:

  • 安卓开发网站开发绍兴seo网站管理
  • 微信音乐音频怎么关闭搜索引擎优化代理
  • 成都网站建设哪家便宜网站建设网页设计培训班
  • 用mvc做网站的框架个人网站推广方法
  • 东莞市网站建设分站品牌重庆网站设计重庆最加科技
  • 建设网站的技术方案是啥在线课程软件网站建设费用
  • 做模块高考题的网站东乡族网站建设
  • 怎样做自己的购物网站厦门网站建设外贸
  • 婺源网站建设天津seo培训机构
  • 辽宁省建设工程造价管理协会网站wordpress网页防爬
  • 广西住建局和城乡建设局网站北京专业网站的建设
  • 郑州市惠济区建设局网站网页制作免费下载
  • 网站建设需要什么插件遵化建设招标网站
  • 小程序可以做企业网站iss服务器上部署的网站怎么打开
  • 招聘网站大全58同城免费申请试用网站
  • dw做网站首页长宽设置多少wordpress 标签页面
  • 苏州专业高端网站建设企业电子商务网站软件建设的核心
  • 网站建设新闻发布小说网站开发文档
  • 专门做民宿的网站有哪些网站改版方案
  • 网站备份 ftp深圳商标设计公司排名
  • 北京网站制作官网响应式网站建设推荐乐云践新
  • 苏州吴中长桥网站建设个人网站建设步骤
  • 广东网站建设怎么选深圳网站建设明细报价表
  • 会员型网站搜索引擎app
  • 厦门网站制作案例网站版式布局
  • 网站流量分析方法网站加载速度
  • 三只松鼠网站开发模板wordpress设置显示摘要
  • 网站设置二级域名好吗公司单页设计
  • 响应式网站无法做百度联盟郑州全平台广告推广
  • asp网站安全吗安卓开发前景如何