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

像饿了码的网站建站有吗个人怎么接外贸订单

像饿了码的网站建站有吗,个人怎么接外贸订单,深圳企业黄页网站,品牌宣传海报设计制作问题背景 给定一个可包含重复数字的序列 n u m s nums nums,按任意顺序 返回所有不重复的全排列。 数据约束 1 ≤ n u m s . l e n g t h ≤ 8 1 \le nums.length \le 8 1≤nums.length≤8 − 10 ≤ n u m s [ i ] ≤ 10 -10 \le nums[i] \le 10 −10≤nums[i]≤…

问题背景

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

数据约束

  • 1 ≤ n u m s . l e n g t h ≤ 8 1 \le nums.length \le 8 1nums.length8
  • − 10 ≤ n u m s [ i ] ≤ 10 -10 \le nums[i] \le 10 10nums[i]10

解题过程

这题和 全排列 的区别在于数组里可能有重复的元素,那么只要在回溯的过程中及时地跳过重复元素即可。
用哈希表来记录哪些位置上的元素已经添加到路径中了,遇到重复元素必须先填前面的元素。

具体实现

class Solution {public List<List<Integer>> permuteUnique(int[] nums) {Arrays.sort(nums);int n = nums.length;List<List<Integer>> res = new ArrayList<>();List<Integer> path = Arrays.asList(new Integer[nums.length]);boolean[] onPath = new boolean[n];dfs(0, nums, path, onPath, res);return res;}private void dfs(int i, int[] nums, List<Integer> path, boolean[] onPath, List<List<Integer>> res) {if (i == nums.length) {res.add(new ArrayList<>(path));return;}for (int j = 0; j < nums.length; j++) {if (onPath[j] || j > 0 && nums[j] == nums[j - 1] && !onPath[j - 1]) {continue;}path.set(i, nums[j]);onPath[j] = true;dfs(i + 1, nums, path, onPath, res);onPath[j] = false;}}
}
http://www.tj-hxxt.cn/news/33852.html

相关文章:

  • 手机网站网页设计国际新闻网
  • app开发网站排行榜网络顾问
  • 免费搭建网站 域名口碑营销的方法
  • 站群推广sem推广软件选哪家
  • 个人网站免费注册上海优质网站seo有哪些
  • 做百度移动网站吗百度关键词排名快速排名
  • 南宁模板建站平台首页关键词排名优化
  • 简书网站开发广州日新增51万人
  • 公司的网 网站打不开清远网站seo
  • etw做的网站杭州正规引流推广公司
  • angular做的网站百度推广后台登录
  • 广州企业网站网络培训平台
  • php网站开发面试重庆百度关键词推广
  • 佛山个人制作网站公司福州外包seo公司
  • 重庆市建设监理协会网站站长工具爱情岛
  • 重庆建设集团网站首页营销的概念是什么
  • 手机上怎么做微电影网站有哪些可以推广的平台
  • 深度科技有限公司家庭优化大师
  • 有经验的网站建设我想在百度发布信息
  • 优化免费网站建设河北关键词seo排名
  • 如何做网站关键词收录宁波网络营销推广咨询报价
  • 杭州市城乡建设 网站企业管理培训课程费用
  • 宁波提高网站排名网站权重查询接口
  • 东莞网站哪家好网站推广的常用方法有哪些
  • wordpress 增加菜单北京seo优化推广
  • 公司网站空间域名建设百度推广价格表
  • 做独立网站高端网站建设案例
  • 怎么给自己公司做网站百度人工服务热线电话
  • 深圳市住建设局网站数据分析师要学什么
  • 哪个公司可以做网站seo关键词优化软件怎么样