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

针对茅台酒企业网站建设方案泰安做网站公司

针对茅台酒企业网站建设方案,泰安做网站公司,有哪些做的比较好的网站,甘肃省政府网站建设的现状目录 题目 思路 代码 题目 给定一个可包含重复数字的序列 nums ,按任意顺序 返回所有不重复的全排列。 示例 1: 输入:nums [1,1,2] 输出: [[1,1,2],[1,2,1],[2,1,1]]示例 2: 输入:nums [1,2,3] 输出…

目录

题目

思路 

代码


题目

给定一个可包含重复数字的序列 nums ,按任意顺序 返回所有不重复的全排列。

示例 1:

输入:nums = [1,1,2]
输出:
[[1,1,2],[1,2,1],[2,1,1]]

示例 2:

输入:nums = [1,2,3]
输出:[[1,2,3],[1,3,2],[2,1,3],[2,3,1],[3,1,2],[3,2,1]]

思路 

去重一定要对元素进行排序,这样我们才方便通过相邻的节点来判断是否重复使用了

一般来说:组合问题和排列问题是在树形结构的叶子节点上收集结果,而子集问题就是取树上所有节点的结果

对于排列问题,树层上去重和树枝上去重,都是可以的,但是树层上去重效率更高!

这么说是不是有点抽象?

来来来,我就用输入: [1,1,1] 来举一个例子。

树层上去重(used[i - 1] == false),的树形结构如下:

47.全排列II2

树枝上去重(used[i - 1] == true)的树型结构如下:

47.全排列II3

大家应该很清晰的看到,树层上对前一位去重非常彻底,效率很高,树枝上对前一位去重虽然最后可以得到答案,但是做了很多无用搜索。

那如果都可以,直接去掉哪个条件可以吗?

不可以!得一直是 true 或者一直是false 才可以,而不是 一会是true 一会又是false

代码

class Solution {List<List<Integer>> result=new ArrayList<>();LinkedList<Integer> path=new LinkedList<>();boolean[] used;//用来标记他使用过没有public List<List<Integer>> permuteUnique(int[] nums) {used=new boolean[nums.length];Arrays.sort(nums);//先排序,让相同的数字排列在一起Arrays.fill(used, false);backTracking(nums,used);return result;}public void backTracking(int[] nums,boolean[] used){if(path.size()==nums.length){result.add(new ArrayList<>(path));//叶子节点,收集}for(int i=0;i<nums.length;i++){if(i>0&&nums[i]==nums[i-1]&&used[i-1]==false){//重复continue;}if(used[i]==false){//表示数字不能重复取used[i]=true;path.add(nums[i]);backTracking(nums,used);path.remove(path.size()-1);//回溯used[i]=false;}}}
}

http://www.dtcms.com/wzjs/144439.html

相关文章:

  • 鞍山网页制作长沙seo网站管理
  • 商城网站开发项目文档seo的基本步骤顺序正确的是
  • 专做网站的公司下载官方正版百度
  • 网站未经授权推广别人的产品百度招聘网最新招聘信息
  • 江岸区建设局网站最新热搜新闻事件
  • 网站修改建议电脑编程培训学校哪家好
  • 餐饮公司注册条件湖南网站seo地址
  • 珠海网站建设推广厂商八爪鱼磁力搜索引擎
  • wordpress站点取名百度网页版浏览器入口
  • 闸北建设机械网站站长工具seo查询
  • h5页面生成百度seo关键词排名优化
  • 搬家网站建设公司深圳百度公司地址在哪里
  • 菜鸟做网站seo诊断方案
  • 电子商务网站建设考试题海南百度推广总代理
  • 网站超级链接怎么做深圳百度seo哪家好
  • 动易网站只能进首页海南百度推广中心
  • 七牛云存储 wordpress插件石家庄seo排名外包
  • 旅游网站论文网络营销学什么
  • 网站流量 名词seo高级教程
  • 汕头做网站费用黑马培训机构可靠吗
  • 大学生网站策划书说明书营销工具
  • 怎么做淘客网站品牌运营策划方案
  • 湖北 商城网站建设多少钱免费创建网站软件
  • 做网站软件推广seo优化公司
  • 潍坊做网站建设的公司阿里巴巴运营
  • 如何开通免费网站内蒙古最新消息
  • 成都网站建设前十优化百度搜索
  • golang 做网站全球疫情最新数据统计
  • 网站开发就业方向百度浏览器网页版入口
  • 徐州建设网站公司如何创建一个属于自己的网站