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

担保交易网站开发站长基地

担保交易网站开发,站长基地,长治网站建设,鞍山做网站专业公司文章目录 组合并集问题汇总:题目方法一:递归加回溯(去重版) 组合并集问题汇总: 1、子集非去重版本 2、组合非去重版本 3、组合去重版本 题目 本题nums数组存在重复元素,所以本题会涉及一个去重操作&#…

文章目录

    • 组合+并集问题汇总:
    • 题目
    • 方法一:递归加回溯(去重版)

组合+并集问题汇总:

1、子集非去重版本
2、组合非去重版本
3、组合去重版本

题目

在这里插入图片描述
本题nums数组存在重复元素,所以本题会涉及一个去重操作:
子集无需去重版本:【LeetCode-中等题】78. 子集
组合去重版: 【LeetCode-中等题】47. 全排列 II

本题最大的不同就在于组合去重版收获结果是在递归结束末尾,而本题去重收获结果是在递归开始的时候,并且去重操作的条件都是一样的,区别就在于for循环 子集是从startIndex开始的,而 组合都是从0开始的

两者的代码对比
在这里插入图片描述

方法一:递归加回溯(去重版)

在这里插入图片描述

class Solution {
// 递归加回溯List<List<Integer>> res = new ArrayList<>();//最终结果集public List<List<Integer>> subsetsWithDup(int[] nums) {Arrays.sort(nums);//事先对数组进行排序List<Integer>  zres = new ArrayList<>();int startIndex = 0 ;int[] usered = new int[nums.length];//标记数组  0代表未使用   1 代表使用过了dfsback(nums,zres,startIndex,usered);return res;}public void  dfsback(int[] nums, List<Integer> zres,int startIndex,int[] usered){res.add(new ArrayList<>(zres));//收货结果if(startIndex >= nums.length) return ;for(int i = startIndex ; i<nums.length;i++){if(usered[i] == 1) continue;if(i > 0 &&nums[i-1] == nums[i] && usered[i-1] == 0) continue;//去重操作else{zres.add(nums[i]);usered[i] = 1;dfsback(nums,zres,i+1,usered);//下一层递归zres.remove(zres.size()-1);//回溯过程usered[i] = 0;}}}
}
http://www.shuangfujiaoyu.com/news/30448.html

相关文章:

  • 深圳做英文网站公司惠州seo推广外包
  • 深圳国外网站设计注册网址在哪里注册
  • 厚街网站建设报价百度seo优化是做什么的
  • 多用户服务交易系统佛山做网络优化的公司
  • 手机网站的优缺点免费刷粉网站推广
  • 电子商务网站建设和管理的意义网站优化建议怎么写
  • 网页设计代码大全html制作表单湖南seo服务电话
  • 武汉做鸭兼职网站今天发生的重大新闻5条
  • 怎么把网站做二维码动态网站设计毕业论文
  • 长春搜索引擎网站推广湖南竞价优化专业公司
  • 政府网站建设规范近三天发生的重要新闻
  • 多语网站wordpress子站点广告软文200字
  • 手机网站价格网上找客户有什么渠道
  • 赤峰做网站多少钱交换链接营销成功案例
  • 怎么自己做网站qq网络营销工程师培训
  • 如何提升网站权重百度seo优化技巧
  • 如何查看网站域名解析实体店100个营销策略
  • 南通网站建设十年以上公司上海百度推广排名
  • 南山商城网站建设哪家技术好搜索引擎优化排名优化培训
  • 找做玻璃的网站seo整站优化推广
  • 抖音代运营合作协议安阳seo
  • 购物网站排名女装移动网站优化排名
  • 深圳市seo网站设计多少钱天津网络关键词排名
  • 神马网站排名百度app免费下载安装
  • 成营销型网站制作首页图片点击率如何提高
  • 商城建站系统多少钱seo软文是什么
  • 网站开发 教学目标seo赚钱培训
  • 英语网站案例青岛seo网站关键词优化
  • 百度客服中心人工电话百度网站快速优化
  • 响应式网站建站系统seo外链在线提交工具