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

石家庄网站定制什么是网站的二级目录

石家庄网站定制,什么是网站的二级目录,e福州电子公交卡,网页设计与制作工资多少leetcode 90 思路 之前有一篇博文和本题很相似,可以参考:leetcode78-子集 本题是子集II,和子集的区别就是本题中的元素可能是重复的,并且nums是无序的,对于这种类型的题,也和之前发布的一篇博文很相似&a…

leetcode 90
在这里插入图片描述

思路

之前有一篇博文和本题很相似,可以参考:leetcode78-子集
本题是子集II,和子集的区别就是本题中的元素可能是重复的,并且nums是无序的,对于这种类型的题,也和之前发布的一篇博文很相似:组合总和II
这里的难点在于去重,去重的逻辑和组合总和II完全相似,首先对于无序的nums,我们需要给他进行排序,否则无法知道是否是重复的,在排序完成后,我们可以通过下一个元素和上个元素进行比较,如果相同说明是重复的,但是需要注意的是,前一个元素和后一个元素相同的时候还不能是同一个层级的,这里的startIndex是开始遍历的初始节点,如果i > startIndex的时候说明开始节点不同,和前一个元素不属于同一个层级,什么时候可能是同一个层级呢? 假设nums = [1,2,2] startIndex = 0,就是从0开始的时候,会有多个深度遍历,path = [1], path = [1,2], path = [1,2,2]都是从1开始的,也就是这些path都是从startIndex = 0开始的,往深度去遍历,这种情况就是一个层级,path = [1,2,2]的时候第三个元素和第二个元素相同但是这是可以作为答案的,所以不能return,所以需要i > startIndex

实现

var subsetsWithDup = function (nums) {let result = [], path = [];nums.sort((a, b) => a - b);const backtracking = (nums, startIndex) => {result.push([...path])if (startIndex === nums.length) return;for (let i = startIndex; i < nums.length; i++) {if (i > startIndex && nums[i] === nums[i - 1]) {continue}path.push(nums[i])backtracking(nums, i + 1)path.pop()}}backtracking(nums, 0)return result;
};
http://www.dtcms.com/wzjs/534888.html

相关文章:

  • 网络工程毕设做网站网店美工名词解释
  • 网站建设策划报告当地的建设工程信息网
  • 东莞网站建设价位做网站前需要准备什么条件
  • 建设地区网站建议宁波建站模板厂家
  • 设计素材网站版权问题漳州企业网站建设
  • 网站不备案可以做百度推广吗两个男生是怎么做的细写
  • 社交网站的设计简单个人网页制作成品
  • 南通网站优化推广广州服装网站建设
  • 网站建设一般好久到期郑州移动网站建设
  • 怎样建商业网站网站源码上传安装
  • 庆网站建设打电话沟通做网站话术
  • 家具网站首页设计wordpress上传excel文件
  • 网站开发职业定位密云石家庄网站建设
  • 网站建设后需要录入网站开发一个支付功能要好多钱
  • 女生做网站运营抖音代运营比较有名的公司
  • 品展示设计网站做电商网站前端需要什么框架
  • 专业科技网站建设wordpress5文章外链
  • 网站f式布局上海app开发和制作公司
  • 电脑网站设计制作设一个网站链接为安全怎么做
  • 网站上挂百度广告联盟需要申请icp经营许可证吗手机营销软件
  • 做炭化料的网站合肥网络运营公司哪家好
  • 网站开发的毕设开题报告免费设计头像
  • 网站更新方案怎样下载软件到电脑桌面上
  • 做美图+网站有哪些厦门建行网站首页
  • 安装Wordpress个人网站谁有wap网站
  • 网站建设资讯群晖wordpress只能访问首页
  • 公司网站可以分两个域名做吗wordpress 右侧悬浮
  • 移动手机网站建设郑州做网站哪家比较好
  • 小程序源码网站论坛wordpress伪原创设置
  • 小企业网站服务器网络运维工程师简历范文