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

led灯散热片技术支持 东莞网站建设Wordpress获取自定义分类

led灯散热片技术支持 东莞网站建设,Wordpress获取自定义分类,网站建设氺首选金手指13,网站如何做更新前言#xff1a; 如果你一点也不了解什么叫做回溯算法#xff0c;那么推荐你看看这一篇回溯入门#xff0c;让你快速了解回溯算法的基本原理及框架 递增子序列 给你一个整数数组 nums #xff0c;找出并返回所有该数组中不同的递增子序列#xff0c;递增子序列中 至少有两… 前言 如果你一点也不了解什么叫做回溯算法那么推荐你看看这一篇回溯入门让你快速了解回溯算法的基本原理及框架 递增子序列 给你一个整数数组 nums 找出并返回所有该数组中不同的递增子序列递增子序列中 至少有两个元素 。你可以按 任意顺序 返回答案。 数组中可能含有重复元素如出现两个整数相等也可以视作递增序列的一种特殊情况。 来源力扣LeetCode递增子序列 由题意可得下面两点要求 递增的子序列且元素数量大于2子序列与子序列不能相同可使用重复出现的数字 像这种需要依次取元素然后将元素存储起来汇成总集合期间可能还需要回退取不一样集合的题目我们第一个想到的可以使用回溯法那么该如何回溯呢且看下图分析我们使用[ 4,7,6,7 ]举例 回溯收集子集条件 根据题意可以得知我们只要子序列的数量大于等于2就可以回溯终止条件 终止条件就是达到nums.size()单层搜索逻辑 我们由图可以得知虽然序列里面可能有重复的数字但是单层我们不能取相同的数字如果我们取了相同的数字那么必定会存在相同的子集所以我们单层需要去重 单层去重我们这里使用一个标记的容器 unordered_set int use存放已经出现过的数字 代码如下 class Solution { public:vectorvectorint arr;vectorint _arr;void BackTracking(vectorint nums,int begin){if(_arr.size()2)//只要数据2就存储我们这里不需要return{arr.push_back(_arr);}unordered_setint use;//标记容器for(int ibegin;inums.size();i){//如果是空直接存放然后判断别的关系if((!_arr.empty() _arr.back()nums[i]) || use.find(nums[i])!use.end()){continue;}_arr.push_back(nums[i]);use.insert(nums[i]);BackTracking(nums,i1);//不能重复使用单个数据所以我们需要i1_arr.pop_back();}}vectorvectorint findSubsequences(vectorint nums) {BackTracking(nums,0);return arr;} };全排列 II 给定一个可包含重复数字的序列 nums 按任意顺序 返回所有不重复的全排列。 来源力扣LeetCode全排列 II 本题是全排列的进阶版之前是没有重复元素现在有重复元素我们该如何解决呢 这个题与上一题递增子序列相差不多也是需要单层去重且看下图 相较于之前的收集元素排列我们需要将每个元素都使用到所以我们每次循环开始条件都为0但是为了不使用一个使用过的元素我们需要设置一个标记的数组使用过一个标记一个单层去重是因为同一层使用相同的元素没有意义使用相同元素相当于递归两遍相同数据导致出现相同子集 先排序所有元素标记数组单层去重 代码如下 class Solution { public:vectorvectorint arr;vectorint _arr;void BackTracking(vectorint nums,vectorbool use){if(_arr.size()nums.size()){arr.push_back(_arr);return;}for(int i0;inums.size();i){//单层去重及判断元素是否使用过if(i0 nums[i]nums[i-1] use[i-1]false){continue;}if(use[i]false){use[i]true;_arr.push_back(nums[i]);BackTracking(nums,use);_arr.pop_back();use[i]false;}}}vectorvectorint permuteUnique(vectorint nums) {sort(nums.begin(),nums.end());//需要排序为去重做准备vectorbool use(nums.size(),false);BackTracking(nums,use);return arr;} };
http://www.hkea.cn/news/14329074/

相关文章:

  • 磁业 东莞网站建设福步外贸论坛app下载
  • 哪家做网站做得好创客贴网页设计网站
  • 潍坊网站优化公司哪家好佛山网站开发公司电话
  • soho怎么做网站win7局域网网站开发
  • 江苏盐城有做淘宝网站的吗网站哪家做得好
  • 做带支付平台的网站音乐网站用什么语言做
  • 广东外贸网站建设企业专业苏州房产网站建设
  • 网站维护员工作内容qq邮箱网页版登录
  • 深圳龙华公司分类目录seo wordpress
  • 网站seo案例企业网站包含哪些页面
  • 宁波网站建站公司修改新wordpress密码
  • 义乌市做网站vps被攻击网站打不开ping值高
  • 公司网站制作费用某网站自己做中性笔
  • 网站推广方案有哪些网站建设公司有
  • 门窗厂家东莞网站建设广州网站推广电话
  • 手机网站怎么制作软件用户ui设计培训
  • 合川集团网站建设网站开发挣钱吗
  • 宣讲家网站支部建设php网页模板
  • 东铁匠营网站建设公司做网站工作的怎么填职务
  • 网站如何做seo优化教程保定网站建设制作
  • 平湖城乡规划建设局网站局域网做网站
  • 电商网站开发背景怎么写网络交易平台
  • 网站怎么做更新吗网站建设要多少费用
  • 保山网站建设多少钱wordpress 简历
  • 湿地保护宣教网站建设意义最新网络推广平台
  • 漂亮的网站建设中静态页wordpress existing_mimes
  • 怎么做网站推广佳木斯网站qq临时会话
  • 网站销售策划帮别人做ppt赚钱的网站
  • 现在建个企业网站要多少钱公司就我一个网站制作
  • 做外贸网站哪家好wordpress升级不了