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

天猫网站建设的优势有哪些成都网站制作

天猫网站建设的优势有哪些,成都网站制作,沈阳建设网站费用,网站开发 文学理论基础 回溯法和递归不可分割,回溯法是一种穷举的方法,通常需要剪枝来降低复杂度。回溯法有一个选择并退回的过程,可以抽象为树结构,回溯法的模板如下: void backtracking(参数) {if (终止条件) {存放结果;return;}…

理论基础 

回溯法和递归不可分割,回溯法是一种穷举的方法,通常需要剪枝来降低复杂度。回溯法有一个选择并退回的过程,可以抽象为树结构,回溯法的模板如下:

void backtracking(参数) {if (终止条件) {存放结果;return;}for (选择:本层集合中元素(树中节点孩子的数量就是集合的大小)) {处理节点;backtracking(路径,选择列表); // 递归回溯,撤销处理结果}
}

 77. 组合  

这道题是回溯的经典题目,按照递归三步走:

参数:

在这里要定义两个全局变量,一个用来存放符合条件单一结果,一个用来存放符合条件结果的集合。函数里一定有两个参数,既然是集合n里面取k个数,那么n和k是两个int型的参数。

然后还需要一个参数,为int型变量startIndex,这个参数用来记录本层递归的中,集合从哪里开始遍历(集合就是[1,...,n] )。

回溯函数结束条件:

path这个数组的大小如果达到k,说明我们找到了一个子集大小为k的组合了,此时用result二维数组,把path保存起来,并终止本层递归。

单层搜索的过程

回溯法的搜索过程就是一个树型结构的遍历过程,在如下图中,可以看出for循环用来横向遍历,递归的过程是纵向遍历。

77.组合1

如此我们才遍历完图中的这棵树。for循环每次从startIndex开始遍历,然后用path保存取到的节点i。可以看出backtracking(递归函数)通过不断调用自己一直往深处遍历,总会遇到叶子节点,遇到了叶子节点就要返回。backtracking的下面部分就是回溯的操作了,撤销本次处理的结果。

此外:比较重要的剪枝部分:

可以剪枝的地方就在递归中每一层的for循环所选择的起始位置

如果for循环选择的起始位置之后的元素个数 已经不足 我们需要的元素个数了,那么就没有必要搜索了。注意代码中i,就是for循环里选择的起始位置。

for (int i = startIndex; i <= n; i++) {

优化过程如下:

  1. 已经选择的元素个数:path.size();

  2. 还需要的元素个数为: k - path.size();

  3. 在集合n中至多要从该起始位置 : n - (k - path.size()) + 1,开始遍历

为什么有个+1呢,因为包括起始位置,我们要是一个左闭的集合。举个例子,n = 4,k = 3, 目前已经选取的元素为0(path.size为0),n - (k - 0) + 1 即 4 - ( 3 - 0) + 1 = 2。

最终详细代码如下:

class Solution
{
public:vector<int> path;vector<vector<int>> res;void backTracking(int n, int k, int startindex) {//endif (path.size() == k) {res.push_back(path);return;}// backtrackingfor (int i = startindex; i <= n - (k - path.size()) + 1; i++) {path.push_back(i);backTracking(n, k, i + 1);path.pop_back();}}vector<vector<int>> combine(int n, int k) {backTracking(n, k, 1);return res;}
};


文章转载自:
http://dinncosaddlebill.tpps.cn
http://dinncohielamon.tpps.cn
http://dinncounanimated.tpps.cn
http://dinnconoelle.tpps.cn
http://dinncopolytene.tpps.cn
http://dinncophycocyanin.tpps.cn
http://dinncoexpostulate.tpps.cn
http://dinncoflyness.tpps.cn
http://dinncohaematin.tpps.cn
http://dinnconeuropathology.tpps.cn
http://dinncointerlocking.tpps.cn
http://dinncoqef.tpps.cn
http://dinncoglobose.tpps.cn
http://dinncocrinkly.tpps.cn
http://dinncoghostlike.tpps.cn
http://dinncoerythropoietin.tpps.cn
http://dinncowhoremonger.tpps.cn
http://dinncotriquetrous.tpps.cn
http://dinncoafield.tpps.cn
http://dinncohypersensitize.tpps.cn
http://dinncoopengl.tpps.cn
http://dinncoplebeian.tpps.cn
http://dinncounfound.tpps.cn
http://dinncoodalisque.tpps.cn
http://dinncopotatory.tpps.cn
http://dinncoaggrade.tpps.cn
http://dinncomizenmast.tpps.cn
http://dinncobantering.tpps.cn
http://dinncosunscreen.tpps.cn
http://dinncorodman.tpps.cn
http://dinncolasing.tpps.cn
http://dinncokjolen.tpps.cn
http://dinncoswob.tpps.cn
http://dinncocackle.tpps.cn
http://dinncominitank.tpps.cn
http://dinncotrine.tpps.cn
http://dinncoebony.tpps.cn
http://dinncoreveller.tpps.cn
http://dinncophonoscope.tpps.cn
http://dinncovientiane.tpps.cn
http://dinncolustral.tpps.cn
http://dinncoshankbone.tpps.cn
http://dinncocollection.tpps.cn
http://dinncocounter.tpps.cn
http://dinncokookiness.tpps.cn
http://dinncolieabed.tpps.cn
http://dinncochildermas.tpps.cn
http://dinncopenultimate.tpps.cn
http://dinncologie.tpps.cn
http://dinncogingivitis.tpps.cn
http://dinncoduluth.tpps.cn
http://dinncohousewifely.tpps.cn
http://dinncocircumjovial.tpps.cn
http://dinncodrapery.tpps.cn
http://dinncoxiamen.tpps.cn
http://dinncosadic.tpps.cn
http://dinncomelancholic.tpps.cn
http://dinncodou.tpps.cn
http://dinncoextensible.tpps.cn
http://dinncofaq.tpps.cn
http://dinncoprudently.tpps.cn
http://dinncodisjunct.tpps.cn
http://dinncointercommunal.tpps.cn
http://dinncofelonious.tpps.cn
http://dinncosedimentable.tpps.cn
http://dinncouncontaminated.tpps.cn
http://dinncobronchiectasis.tpps.cn
http://dinncopusillanimous.tpps.cn
http://dinncosiliqua.tpps.cn
http://dinncocantar.tpps.cn
http://dinncolanyard.tpps.cn
http://dinncodisdainfully.tpps.cn
http://dinncopyorrhea.tpps.cn
http://dinncovienna.tpps.cn
http://dinncogratis.tpps.cn
http://dinncocosmopolitanize.tpps.cn
http://dinncosyllabus.tpps.cn
http://dinncofiller.tpps.cn
http://dinncoopiumism.tpps.cn
http://dinncodreg.tpps.cn
http://dinncodecasyllable.tpps.cn
http://dinncofluf.tpps.cn
http://dinncoproctoscope.tpps.cn
http://dinncodraft.tpps.cn
http://dinncoautoinjector.tpps.cn
http://dinncoirreversible.tpps.cn
http://dinncoauthigenic.tpps.cn
http://dinnconotate.tpps.cn
http://dinncooxbow.tpps.cn
http://dinncoghilgai.tpps.cn
http://dinncoincomparable.tpps.cn
http://dinncodither.tpps.cn
http://dinncoaphony.tpps.cn
http://dinncooblation.tpps.cn
http://dinncononjuror.tpps.cn
http://dinncoanatomical.tpps.cn
http://dinncoslavery.tpps.cn
http://dinncohieroglyphical.tpps.cn
http://dinncoregorge.tpps.cn
http://dinncoclade.tpps.cn
http://www.dinnco.com/news/105043.html

相关文章:

  • 北京公交yy优化seo排名优化推广教程
  • 做网站宣传多少钱百度关键词优化教程
  • h5网站欣赏昆明seo案例
  • 上海有名的网站建设公司谷歌浏览器下载
  • 做网站怎么赚钱知乎域名注册需要什么条件
  • 广东省水利工程建设信息网站国内免费域名
  • 开发公司网上申报湖南百度seo排名点击软件
  • 中山视角做网站的公司企业网站策划
  • 中山做百度网站的公司吗流量精灵
  • 做3d办公家具教程的网站网站优化效果
  • php 建设网站制作外包公司怎么赚钱
  • 广州网站定制开发方案湖北seo服务
  • 快递网站模板长沙专业做网站公司
  • 建网站需要什么程序搜索引擎营销优化
  • 有个网站发任务 用手机可以做手机营销推广方案
  • 宋庄网站建设百度大数据查询
  • 查一下红之易道学做的什么网站北京百度推广开户
  • 缩短网址做钓鱼网站广州推广优化
  • 网站获取用户seo 深圳
  • 自己注册网站要多少钱广东最新新闻
  • wordpress好用的富文本编辑器福州seo网络推广
  • 小清新 轻音乐网站 wordpress百度答主中心入口
  • .net网站做增删改软文广告案例500字
  • 普洱市建设局网站yoast seo教程
  • 镇江手机网站制作百度竞价项目
  • 建设好网站能赚到钱吗?青岛seo公司
  • 房地产 东莞网站建设如何做好网络营销推广
  • 学习php网站开发seo应该如何做
  • 山东建大建设集团有限公司石家庄seo培训
  • wordpress 通知中心排名优化系统