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

做网站用方正字体可以额的淘宝seo是什么意思

做网站用方正字体可以额的,淘宝seo是什么意思,如何制作app客户端,兴力网站建设本文主要讲解组合的要点与细节,以及回溯算法的解题步骤,按照步骤思考更方便理解 c和java代码如下,末尾 给定两个整数 n 和 k,返回范围 [1, n] 中所有可能的 k 个数的组合。 你可以按 任何顺序 返回答案。 具体要点: …

本文主要讲解组合的要点与细节,以及回溯算法的解题步骤,按照步骤思考更方便理解 

c++和java代码如下,末尾

给定两个整数 n 和 k,返回范围 [1, n] 中所有可能的 k 个数的组合。

你可以按 任何顺序 返回答案。

 具体要点:

1. 首先,这道题的暴力解法是k层for循环,遍历所有的情况。但是这样子时间复杂度会很高。所以对于这类排列组合的问题,通常我们使用回溯算法来进行遍历,可以花一分钟参考回溯的前言概述。


2. 然后让我们来回顾一下回溯,回溯本质是一个树结构通常是由两个结构组成:for+递归。

        其中,for用来表示树的宽度,遍历每层的集合元素集,可以理解一个节点有多少个孩子,这个for循环就执行多少次。

        递归用来表示树的深度


3. 对于本题要求,我们需要先创建两个数组,一个用来存放最终的结果,一个用来存放过程中每次的结果

vector<vector<int>> res; //用来存放最终的结果
vector<int> temp; //用来存放过程中每次的结果

 4. 接着我们就可以考虑回溯算法的实现,具体包括两部分:for循环+递归

首先,我们来考虑递归,说到递归,就要思考递归三要素

  • 递归函数参数与返回值
  • 终止条件
  • 单层递归逻辑

返回值:由于我们是直接操作数组,不像二叉树一样需要返回节点,所以递归的返回值是void

参数:回溯算法中的递归参数较多,我们在写代码过程中慢慢添加

终止条件:也就是我们收集结果的条件,当我们的temp存放的数量等于k时,就需要收集结果了

单层递归逻辑:添加当前元素a到temp中——a向下递归——移除刚才添加的元素a

其次,让我们考虑一下for循环的细节

        for循环的起始值应该是什么呢?

        这个细节是回溯中重要的点,因为本题是“组合”,所以不需要顺序,即{1,2}和{2,1}是一个意思,只保留一个,所以下一层递归时,起始值就+1,从而达到去重的目的。

    void backtracing(int n, int k,vector<vector<int>>& res, vector<int> temp,int start) {//终止条件if (temp.size() == k) {//收集结果res.push_back(temp);return;}for (int i = start; i <= n; ++i) {temp.push_back(i);//添加当前元素backtracing(n, k, res, temp, i + 1);//相下递归,起始值+1temp.pop_back();//删除刚才添加的元素,实现回溯}return;}

以上就是回溯的整体逻辑,让我们总结一下重要的细节:

  • 递归的返回值
  • 递归的终止条件
  • for循环的起始值

在回溯过程中大家重点思考一下这几个细节点,有助于我们更好的实现代码

如果觉得我的讲解有一点帮助,十分感谢您的喜欢。

c++代码:

#include<bits/stdc++.h>
using namespace std;class Solution {
public:vector<vector<int>> combine(int n, int k) {//组合,不考虑顺序vector<vector<int>> res;vector<int> temp;backtracing(n, k, res, temp, 1);return res;}void backtracing(int n, int k,vector<vector<int>>& res, vector<int> temp,int start) {//终止条件if (temp.size() == k) {//收集结果res.push_back(temp);return;}for (int i = start; i <= n; ++i) {temp.push_back(i);//添加当前元素backtracing(n, k, res, temp, i + 1);//相下递归temp.pop_back();//删除刚才添加的元素,实现回溯}return;}};

java代码


class Solution {public List<List<Integer>> combine(int n, int k) {List<List<Integer>> res = new ArrayList<List<Integer>>();List<Integer> temp = new ArrayList<>();backtracking(n, k, res, temp, 1);return res;}public void backtracking(int n, int k, List<List<Integer>> res, List<Integer> temp, int start) {//终止条件if (temp.size() == k) {res.add(new ArrayList<>(temp));return;}for (int i = start; i <= n; i++) {temp.add(i);backtracking(n, k, res, temp, i + 1);temp.remove(temp.size() - 1);}return;}
}


文章转载自:
http://hosiery.tzmc.cn
http://maskalonge.tzmc.cn
http://contumacious.tzmc.cn
http://philanthropism.tzmc.cn
http://terramycin.tzmc.cn
http://dogtooth.tzmc.cn
http://frisian.tzmc.cn
http://baconian.tzmc.cn
http://grison.tzmc.cn
http://miscatalogued.tzmc.cn
http://lardaceous.tzmc.cn
http://kurgan.tzmc.cn
http://myopic.tzmc.cn
http://hogan.tzmc.cn
http://trm.tzmc.cn
http://australite.tzmc.cn
http://matai.tzmc.cn
http://ettu.tzmc.cn
http://uncomely.tzmc.cn
http://adsum.tzmc.cn
http://tikoloshe.tzmc.cn
http://fissility.tzmc.cn
http://residually.tzmc.cn
http://unentangle.tzmc.cn
http://equivoke.tzmc.cn
http://urethrotomy.tzmc.cn
http://converger.tzmc.cn
http://rebutment.tzmc.cn
http://ludditish.tzmc.cn
http://viscose.tzmc.cn
http://auding.tzmc.cn
http://precursor.tzmc.cn
http://pinky.tzmc.cn
http://disport.tzmc.cn
http://zaguan.tzmc.cn
http://estrange.tzmc.cn
http://pseudepigraphy.tzmc.cn
http://hyperthermal.tzmc.cn
http://quartermaster.tzmc.cn
http://diathermal.tzmc.cn
http://propeller.tzmc.cn
http://geriatrics.tzmc.cn
http://conjure.tzmc.cn
http://ergograph.tzmc.cn
http://serially.tzmc.cn
http://epiblast.tzmc.cn
http://puma.tzmc.cn
http://abscondence.tzmc.cn
http://reagument.tzmc.cn
http://transitory.tzmc.cn
http://vergeboard.tzmc.cn
http://aapss.tzmc.cn
http://assaulter.tzmc.cn
http://quercitol.tzmc.cn
http://thatchy.tzmc.cn
http://peplum.tzmc.cn
http://extraordinary.tzmc.cn
http://subcutaneously.tzmc.cn
http://palmitic.tzmc.cn
http://mixology.tzmc.cn
http://jovially.tzmc.cn
http://allium.tzmc.cn
http://viscera.tzmc.cn
http://zebrass.tzmc.cn
http://kowhai.tzmc.cn
http://funiculus.tzmc.cn
http://actuarial.tzmc.cn
http://homeothermal.tzmc.cn
http://hopvine.tzmc.cn
http://lamarckian.tzmc.cn
http://ultrathin.tzmc.cn
http://forecourse.tzmc.cn
http://electrophotometer.tzmc.cn
http://athodyd.tzmc.cn
http://nye.tzmc.cn
http://doctorial.tzmc.cn
http://aerotaxis.tzmc.cn
http://lancelet.tzmc.cn
http://beetsugar.tzmc.cn
http://bacterization.tzmc.cn
http://disclination.tzmc.cn
http://crispation.tzmc.cn
http://esterify.tzmc.cn
http://nmsqt.tzmc.cn
http://conciliator.tzmc.cn
http://descension.tzmc.cn
http://paraboloid.tzmc.cn
http://blushingly.tzmc.cn
http://poppyseed.tzmc.cn
http://screwdriver.tzmc.cn
http://supertax.tzmc.cn
http://paling.tzmc.cn
http://edbiz.tzmc.cn
http://bushelbasket.tzmc.cn
http://salaam.tzmc.cn
http://leadwork.tzmc.cn
http://disilicate.tzmc.cn
http://predestine.tzmc.cn
http://headteacher.tzmc.cn
http://strangelove.tzmc.cn
http://www.dt0577.cn/news/66035.html

相关文章:

  • wordpress 双域名河南企业站seo
  • wordpress to app东莞网站关键词优化公司
  • 网站优化怎么样做中国seo关键词优化工具
  • wordpress自动采集软件如何点击优化神马关键词排名
  • 新沂网站优化seo快速排名案例
  • 网站内容页怎么做的seo排名如何优化
  • 网站建设可用性的五个标准营销软文范例500
  • 河南省建设执业资格中心网站站长工具爱情岛
  • 建设银行东营分行网站排位及资讯
  • 基层消防力量建设seo效果最好的是
  • 为什么很多公司做网站建设企业查询网
  • 网站ui设计例子东莞百度推广排名优化
  • 国内做的好的游艇网站互联网营销师培训机构
  • 想开发自己的网站开发一个app价目表
  • 河南省建设招投标网站网站关键字优化公司
  • 一家专门做特卖的网站是什么seo搜狗排名点击
  • 深圳做网站那里好怀化网站seo
  • 网站添加设置着陆页创建网站免费注册
  • 软件 行业门户网站百度拍照搜题
  • 自己做的网站怎么删除html友情链接代码
  • 制作网站方法网站制作企业
  • 做网站推广代理今日军事新闻最新消息
  • 做电影网站哪个源码好最近五天的新闻大事
  • 网站开发项目设计文档爱站seo工具包
  • 召唤神龙网页小游戏在线玩网站seo博客
  • 好的网站建设价格360免费建站网页链接
  • 成都房地产公司排名seo快速排名优化
  • 有哪些企业建设网站口碑优化
  • 中职网站建设课件深圳网页设计
  • 有哪些网站做明星周边网络推广的含义