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

亚马逊是b2b电子商务网站吗免费网站开发平台

亚马逊是b2b电子商务网站吗,免费网站开发平台,wordpress数据大,网站开发的技术leetcode77.组合 组合 题目抽象 我们把组合问题抽象为以下树形结构: 我们将上图的树形结构称之为决策树,从决策树中我们可以看出,n决定决策树的宽度即循环次数,而k决定决策树的深度即递归次数 我们挑选出某一具体路径来进行分析…

leetcode77.组合

组合

题目抽象

我们把组合问题抽象为以下树形结构:

在这里插入图片描述

我们将上图的树形结构称之为决策树,从决策树中我们可以看出,n决定决策树的宽度即循环次数,而k决定决策树的深度即递归次数

在这里插入图片描述

我们挑选出某一具体路径来进行分析。我们在得到[1,2]后递归返回,想要再得到[1,3],就需要把2

“还回去”,因此,这便是一道经典的回溯问题

回溯三部曲

  • 确定递归函数的函数头

首先我们要定义两个全局变量

  • vector<vector<int>> ret:存放最终返回值
  • vector<int> path:存放某一符合要求的结果

也可以将这两个全局变量当作参数传递给递归函数

void dfs(int n, int k, int start)

start用来确定下一层递归的开始位置,调用下一层递归函数时传入start+1,可以避免取到重复元素

  • 单层遍历的过程

for循环中,istart位置开始遍历,path存放取到的值,调用下一层递归,递归结束后回溯

for(int i=start;i<=n;i++)
{path.push_back(i);dfs(n,k,i+1);path.pop_back();
}
  • 确定递归函数终止条件

path.size() == k时递归终止,将path加入ret中后返回

if(path.size() == k)
{ret.push_back(path);return;
}

完整代码

vector<vector<int>> ret;
vector<int> path;
vector<vector<int>> combine(int n, int k) {dfs(n,k,1);return ret;
}
void dfs(int n,int k,int start)
{if(path.size() == k){ret.push_back(path);return;}for(int i=start;i<=n-k+path.size()+1;i++){path.push_back(i);dfs(n,k,i+1);path.pop_back();}
}
http://www.dtcms.com/wzjs/172276.html

相关文章:

  • 网站怎么做登录界面南宁百度推广seo
  • 山东省建设管理中心网站首页淘宝seo排名优化的方法
  • 做搜狗网站点击赚钱人力资源培训机构
  • 品牌设计 品牌标志设计sem与seo
  • 查注册公司什么网站关键词排名方案
  • 做网站建设费用图片搜索
  • 高端网站开发的公司semir森马
  • 怎么做自动发卡网站株洲网站设计外包首选
  • 学做婴儿衣服的网站seowhy
  • 某公司网络营销现状分析南阳本地网络推广优化公司
  • dw软件下载官方免费下载黑帽seo培训多少钱
  • 网站建设管理情况自查报告最新网站推广方法
  • 做游戏交易网站有哪些如何推广一个平台
  • 西安网站建设高端seo关键词排名优化方案
  • 网站建设有哪些家深圳华强北最新消息
  • 网站建设宗旨是什么seo外包多少钱
  • 企业网站建设开题报告是什么购物网站
  • 免费单页网站网站联盟营销
  • 做视频网站用哪个模板seo工具在线访问
  • 网站建设怎么购买空间网络seo是什么意思
  • 如何做企业网站下载百度2023最新版
  • webplus pro网站开发公众号关键词排名优化
  • 网站制作报价明细表软文推广网
  • 搜索引擎优化论文3000字南宁seo全网营销
  • 西安 房产网站建设天津网络优化推广公司
  • 网站开发实训新的体会aso优化师主要是干嘛的
  • 四川网站制作今天的热点新闻
  • 建设电子商务网站的目的海外网络推广方案
  • 微信管理系统后台推广优化方案
  • 重庆网站建设推广优化全国疫情今天最新消息