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

在溧水做新店推广那家网站好百度推广案例及效果

在溧水做新店推广那家网站好,百度推广案例及效果,深圳哪里有网站建设,北京企业网站设计公司LeetCode-47 全排列Ⅱ 题目描述解题思路代码说明 题目描述 给定一个可包含重复数字的序列 nums ,按任意顺序 返回所有不重复的全排列。 示例 : 输入:nums [1,1,2]输出: [[1,1,2], [1,2,1], [2,1,1]] b站题目解读讲的不好&…

LeetCode-47 全排列Ⅱ

  • 题目描述
  • 解题思路
  • 代码
  • 说明

题目描述

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

示例 :

  • 输入:nums = [1,1,2]
  • 输出:
    [[1,1,2],
    [1,2,1],
    [2,1,1]]
    b站题目解读讲的不好,勿喷

解题思路

首先选择对原数组排序,保证相同的数字都相邻,然后每次填入的数一定是这个数所在重复数集合中「从左往右第一个未被填过的数字」,即如下的判断条件:

if (i > 0 && nums[i] == nums[i - 1] && used[i-1] == false) {continue;
}

即可实现树层的去重。

  • 希望在计算的过程中进行去重操作,所以我们对数组nums排序处理。

  • 如果nums[i] == nums[i-1]就说明该分支有可能是重复的。 但是这个相等条件有两种可能:

  1. 一种是,1 1‘ 2,也就是选择完1之后再选择第二个1,两个元素虽然重复,但是第二个元素是前一个元素的下一层,这时是没有问题的。
  2. 另一种是之前的 同层 分支已经有 1 1‘ 2了,这次的选择是 1‘ 1 2 。两个元素重复,且重的是同层路径。那就说明是重复分支

具体区分的办法是 nums[i-1] 的used状态是被选择的,那么说明当前的nums[i] 是 nums[i-1]的下一层路径。 否则如果 nums[i-1] 的状态是没被选择的,那么说明当前 的nums[i] 是nums[i-1] 同层路径。
Alt

代码

class Solution {
public:
// [] 中的数字可以重复,结果集的vector元素不能重复vector<vector<int>> permuteUnique(vector<int>& nums) {sort(nums.begin(), nums.end());vector<bool> used(nums.size(), false);back_tracking(nums, used);return res;}
private:vector<vector<int>> res;vector<int> path;void back_tracking(vector<int>& nums, vector<bool>& used) {if (path.size() == nums.size()) {res.push_back(path);return;} else {for (int i = 0; i < nums.size(); i++) {if (i > 0 && nums[i] == nums[i-1] && used[i-1] == false) continue;if (used[i] == false) {used[i] = true;path.push_back(nums[i]);back_tracking(nums, used);path.pop_back();used[i] = false;}}}} 
};

说明

去重最关键的代码就是

if (i > 0 && nums[i] == nums[i - 1] && used[i - 1] == false) {continue;
}

而改成used[i-1]==true也正确

if (i > 0 && nums[i] == nums[i - 1] && used[i - 1] == true) {continue;
}

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

http://www.hrbkazy.com/news/23197.html

相关文章:

  • 网站原型图展示教育培训机构推荐
  • amazon ec2 wordpress北京seo招聘信息
  • copyright技术支持 东莞网站建设网络推广外包公司排名
  • 专业做视频的网站有哪些内容百度健康人工客服电话24小时
  • 免费建立网站软件推广app的软文案例
  • 罗田住房和城乡建设局网站求网址
  • 东莞市住房福州seo扣费
  • 犀牛云 做网站电子网址怎么创建
  • 汕头市委网站两学一做如何优化网络速度
  • 网站规划建设方案农业绿化风格当前疫情十大热点
  • 北京东城网站建设公司变现流量推广app
  • 怎样做代刷网站长网络广告的收费模式有哪些
  • 网站开发与应用专业微信推广引流方法
  • 做毕业设计做网站真实数据来源市场调研报告范文大全
  • 校园网站建设依据企业营销策划书如何编写
  • wordpress 微信授权百度seo推广
  • 如何申请免费域名做网站线上营销活动主要有哪些
  • 网站建设书籍推荐网站推广方案范文
  • 盐城企业做网站多少钱近期网络舆情事件热点分析
  • 做网站例子手机免费发布信息平台
  • 外包加工哪个网站最靠谱北京seo
  • 做网站简历怎么写手机免费建网站
  • 哪个网站可以找人做清洁优化关键词的作用
  • 网站seo课设企业seo顾问服务
  • 做网站咋赚钱app开发工具
  • 动态网站开发技术的需求分析最好的优化公司
  • 炫酷html5网站模板网上seo研究
  • 怎么删除建站网站程序百度指数的需求指数
  • 苏州建设局官方网站天天外链
  • 图片制作工具英文seo外链