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

linux下做网站谷歌广告平台

linux下做网站,谷歌广告平台,深圳app客户端做网站,西安建设局网站地址491.非递减子序列 思路:这道题最开始的时候,我想到两个问题:一个是如何维持递增的序列,一个是如何去重,写了一版代码,用的前面的去重方法,但是遇到一个case始终过不了,[1,2,3,4,5,6,…

491.非递减子序列

思路:这道题最开始的时候,我想到两个问题:一个是如何维持递增的序列,一个是如何去重,写了一版代码,用的前面的去重方法,但是遇到一个case始终过不了,[1,2,3,4,5,6,7,8,9,10,1,1,1,1,1],肯定是过不了的,因为其不是一个有序序列,并且必须保持其原本的大小顺序,故这道题只能使用哈希表来去重,这道题其实力扣上面还有点小坑,就是他给的两个示例特么都是排序的,但是题目又没提,误导人

错误的思考:

class Solution {
public:vector<vector<int>> result;vector<int> path;void backtracking(vector<int>& nums,int index,vector<bool>& used){if(path.size()>=2){result.push_back(path);}if(index>=nums.size()){return;}for(int i=index;i<nums.size();++i){if(!path.empty() && path.back()>nums[i]) continue;if(i>0&& nums[i-1]==nums[i]&& used[i-1]==false)continue;path.push_back(nums[i]);used[i]=true;backtracking(nums,i+1,used);used[i]=false;path.pop_back();}}vector<vector<int>> findSubsequences(vector<int>& nums) {result.clear();path.clear();vector<bool> used(nums.size(),false);backtracking(nums,0,used);return result;}
};

正确写法:

又学会一种新的去重同一层的方法!

class Solution {
public:vector<vector<int>> result;vector<int> path;void backtracking(vector<int>& nums,int index){if(path.size()>=2){result.push_back(path);}if(index>=nums.size()){return;}unordered_set<int> myset;for(int i=index;i<nums.size();++i){if((!path.empty() && nums[i]<path.back())||myset.find(nums[i])!=myset.end()) continue;myset.insert(nums[i]);path.push_back(nums[i]);backtracking(nums,i+1);path.pop_back();}}vector<vector<int>> findSubsequences(vector<int>& nums) {result.clear();path.clear();backtracking(nums,0);return result;}
};

46.全排列

思路:第一次接触全排列的问题,体会其与组合,分割问题的不同之处!

class Solution {
public:vector<vector<int>> result;vector<int> path;void backtracking(vector<int>& nums,vector<bool>& used){if(path.size()==nums.size()){result.push_back(path);return;}for(int i=0;i<nums.size();i++){if(used[i]==true) continue;used[i]=true;path.push_back(nums[i]);backtracking(nums,used);used[i]=false;path.pop_back();}}vector<vector<int>> permute(vector<int>& nums) {result.clear();path.clear();vector<bool> used(nums.size(),false);backtracking(nums,used);return result;}
};

47.全排列II

思路:这道题就是把前两道题的技巧结合起来了!其这道题可以用used这个数组直接进行去重,其实对于排列问题使用的used数组就是用来标记当前是否使用过的!

class Solution {
public:vector<vector<int>> result;vector<int> path;void backtracking(vector<int>& nums,vector<bool>& used){if(path.size()==nums.size()){result.push_back(path);return;}unordered_set<int> myset;for(int i=0;i<nums.size();++i){if(used[i]==true||myset.find(nums[i])!=myset.end()) continue;myset.insert(nums[i]);used[i]=true;path.push_back(nums[i]);backtracking(nums,used);used[i]=false;path.pop_back();}}vector<vector<int>> permuteUnique(vector<int>& nums) {result.clear();path.clear();vector<bool> used(nums.size(),false);backtracking(nums,used);return result;}
};
http://www.qdjiajiao.com/news/4271.html

相关文章:

  • 移动端web网站模板微商软文大全
  • 注册深圳公司恒诚信价格苏州seo培训
  • 番禺网站建设设计外贸网站外链平台
  • 网站建设指标广州关键词seo
  • 乐清建网站公司哪家好免费刷粉网站推广免费
  • 网站后台用什么开发免费下优化大师
  • 太康做网站公司b站视频推广网站动漫
  • 国内做优秀的农业信息网站百度店铺怎么入驻
  • 河南省建设厅网站打不开中国没有限制的搜索引擎
  • 晋城住房保障和城乡建设管网站2023年免费b站推广大全
  • 免费二级域名分发系统免费seo在线优化
  • 网站建设优化托管简单的网站制作
  • 艺术公司网站定制百度热搜风云榜
  • 国内网站建设的趋势是怎样的seo教程 百度网盘
  • 政府网站专题栏目建设电脑课程培训零基础
  • 网站要放备案号吗东莞网站推广软件
  • 可以做软件的网站有哪些功能吗广告营销案例分析
  • 网站收录后怎么做排名seo优化网站教程百度
  • 北京市朝阳区网站开发公司实时热搜
  • 网站网页设计专业公司百度网盘搜索引擎入口官网
  • 没有网站做APPnba最新交易
  • 做营销网站怎么设计一个网页
  • 西安演出公司网站建设如何进行搜索引擎营销
  • 网站建设开发协议书百度竞价推广
  • 网站综合开发怎么做企业宣传片文案
  • 南宁如何做百度的网站企业网络
  • 低价做营销企业网站今天新闻
  • 设计师图片素材网站有哪些百度问答seo
  • 西安自助建站系统微信公众号的推广
  • 制作网站 服务器配置搜索数据