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

眉山北京网站建设企业网站内页设计

眉山北京网站建设,企业网站内页设计,购物网站功能报价,做学校和企业对接的网站原题出于leetcode第77题https://leetcode.cn/problems/combinations/ 1.树型结构 2.回溯三部曲 递归函数的参数和返回值 确定终止条件 单层递归逻辑 3.代码 二维数组result 一维数组path void backtracking(n,k,startindex){if(path.sizek){result.append(path);return ;}…

原题出于leetcode第77题https://leetcode.cn/problems/combinations/

1.树型结构

2.回溯三部曲

  1. 递归函数的参数和返回值

  2. 确定终止条件

  3. 单层递归逻辑

3.代码

二维数组result
一维数组path
void backtracking(n,k,startindex){if(path.size==k){result.append(path);return ;}for(i=startindex;i<=n;i++){path.push(i);backtracking(n,k,i+1);path.pop();    }return ;
}

4.剪枝算法(长度为k时的剪枝)

由于要求组合的长度为k,故若遍历到某个数时,其后面刚好有k-1个数,则这个数即为应当遍历的最后一个数。如下图树型结构所示:

可以在遍历时对i的范围进行调整,调整逻辑如下:

  • 首先,我们要知道当前选取了多少个元素,即path.size()

  • 其次,计算还需要选取多少个元素:k-path.size();

  • 假设此时取到的数为x,则还未取的数的范围是[x,n],故有:

n-x+1>=k-path.size()

解得:x<=n-(k-path.size)+1

所以i的取值到n-(k-path.size)+1即可,具体代码如下:

二维数组result
一维数组path
void backtracking(n,k,startindex){if(path.size==k){result.append(path);return ;}for(i=startindex;i<=n-(k-path.size)+1;i++){path.push(i);backtracking(n,k,i+1);path.pop();    }return ;
}

文章中有关树型结构的图片出自代码随想录,这是一个非常好的算法平台,强烈推荐学算法的同学看一看

http://www.yayakq.cn/news/746397/

相关文章:

  • 网站建设市场调研关于建设网站的图片
  • 怎做网站宁波网站建设的企业
  • 福田网站建设课程考试欧铂丽全屋定制价格每平米多少钱
  • 郑州好的网站设计公司焦作网站建设价格
  • 创可贴网页设计网站如何选择锦州网站建设
  • 呼市网站建设东方建设集团有限公司网站
  • 标准版网站制作wordpress 多站点 主站点
  • 网站建设的实验总结华为仓颉编程语言
  • 静海做网站公司云主机搭建asp网站
  • 网站推广码怎么做网站开发需要什么技能
  • 网站怎样做权重企业网站建设招标书
  • 关于建设设计院公司网站的建议网页游戏大全小游戏
  • 做网站怎么挣钱赚钱网站开发规范有哪些
  • 网站建设如何设计数据库免费 网站 平台
  • 公司网站建设合同需要交印花税阿里云可以做电影网站
  • 如何在后台做网站分页建设旅游网站的必要性
  • 濮阳做网站多少钱网站备案需要几天
  • 网站建设陆金手指谷哥7wordpress zmovie主题
  • 男女做暖暖的试看网站酥酥影视刚刚传来最新消息
  • 建站公司现状中国建设工程造价管理系统
  • 网站群 seo北京建设网华樾领尚规划图
  • 软件网站开发评估注册商标有什么好处和坏处
  • 福田网站建设多少钱网站做用户登录
  • 深圳查询建设项目规划的网站公司网站建设的项目工作分解结构
  • 诚信通网站怎么做wordpress 短代码 插件
  • 阳江网站建设推广企业门户系统
  • 网站建设计划方案wordpress audio player 下载
  • 网站建设网站制作有限网络营销推广方案
  • 易营宝mip网站建设微擎微网站开发
  • 网站开发创建画布深圳seo排名