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

东莞市建设局网站6百度推广官网电话

东莞市建设局网站6,百度推广官网电话,dw织梦做网站,阿里云企业邮箱收费标准文章目录 1.长度最小的子数组1.题目2.解题思路3.代码编写 2.无重复字符的最长字串1.题目2.解题思路3.解题代码 3.最大连续1的个数Ⅲ1.题目2.解题思路3.解题代码 4.将x减到0的最小操作数1.题目2.解题思路3.解题代码 5.水果成篮1.题目2.解题思路3.解题代码 6.找到字符串中所有字母…

文章目录

  • 1.长度最小的子数组
    • 1.题目
    • 2.解题思路
    • 3.代码编写
  • 2.无重复字符的最长字串
    • 1.题目
    • 2.解题思路
    • 3.解题代码
  • 3.最大连续1的个数Ⅲ
    • 1.题目
    • 2.解题思路
    • 3.解题代码
  • 4.将x减到0的最小操作数
    • 1.题目
    • 2.解题思路
    • 3.解题代码
  • 5.水果成篮
    • 1.题目
    • 2.解题思路
    • 3.解题代码
  • 6.找到字符串中所有字母异位词
    • 1.题目
    • 2.解题思路
    • 3.解题代码
  • 7.串联所有单词的字串
    • 1.题目
    • 2.解题思路
    • 3.解题代码
  • 8.最小覆盖字串
    • 1.题目
    • 2.解题思路
    • 3.解题代码

1.长度最小的子数组

1.题目

题目:长度最小的子数组
在这里插入图片描述
在这里插入图片描述

2.解题思路

在这里插入图片描述
在这里插入图片描述

3.代码编写

class Solution {
public:int minSubArrayLen(int target, vector<int>& nums) {int sum = 0, ret = INT_MAX;for(int left = 0, right = 0; right < nums.size(); right++){sum += nums[right];while(sum >= target){ret = min(ret, right - left + 1);sum -= nums[left++];}}return ret == INT_MAX ? 0 : ret;}
};

2.无重复字符的最长字串

1.题目

题目链接
在这里插入图片描述
在这里插入图片描述

2.解题思路

在这里插入图片描述
在这里插入图片描述

3.解题代码

class Solution {
public:int lengthOfLongestSubstring(string s) {unordered_map<char, int> ci;int ret = 0;for(int left = 0, right = 0; right < s.size(); right++){ci[s[right]]++;while(ci[s[right]] > 1)ci[s[left++]]--;ret = max(ret, right - left + 1);}return ret;}
};

3.最大连续1的个数Ⅲ

1.题目

题目链接
在这里插入图片描述
在这里插入图片描述

2.解题思路

在这里插入图片描述
在这里插入图片描述

3.解题代码

class Solution {
public:int longestOnes(vector<int>& nums, int k) {int ret = 0,ret0 = 0;for(int left = 0, right = 0; right < nums.size();){while(right < nums.size()){ret0 += 1 - nums[right++];if(ret0 > k)break;else ret = max(ret, right - left);}while(ret0 > k){ret0 -= 1 - nums[left++];}}return ret;}
};

4.将x减到0的最小操作数

1.题目

题目链接
在这里插入图片描述
在这里插入图片描述

2.解题思路

在这里插入图片描述

3.解题代码

class Solution {
public:int minOperations(vector<int>& nums, int x) {int sum = 0, ret = -1, n = nums.size();for(int s : nums)sum += s;int target = sum - x;int sum1 = 0;//小细节,要注意if(target < 0) return -1;for(int left = 0, right = 0; right < n; right++){//1.进窗口sum1 += nums[right];//2.判断 出窗口while(sum1 > target)sum1 -= nums[left++];//3.判断 更新retif(sum1 == target) ret = max(ret, right - left + 1);}//输出时也要注意if(ret == -1) return ret;else return n - ret;}
};

5.水果成篮

1.题目

题目链接
在这里插入图片描述

2.解题思路

在这里插入图片描述

3.解题代码

class Solution {
public:int totalFruit(vector<int>& nums) {unordered_map<int, int> hash;int n = nums.size(), ret = 0;if(n == 0) return 0;for(int left = 0, right = 0; right < n; right++){hash[nums[right]]++;while(hash.size() > 2) {hash[nums[left]]--;if(hash[nums[left]] == 0)hash.erase(nums[left]);left++;}ret = max(ret, right - left + 1);}return ret;}
};

优化时间复杂度

class Solution {
public:int totalFruit(vector<int>& nums) {//unordered_map<int, int> hash;int hash[100001] = {0};int n = nums.size(), ret = 0;if(n == 0) return 0;for(int left = 0, right = 0,kinds = 0; right < n; right++){if(hash[nums[right]] == 0) kinds++;hash[nums[right]]++;while(kinds > 2) {hash[nums[left]]--;if(hash[nums[left]] == 0)kinds--;left++;}ret = max(ret, right - left + 1);}return ret;}
};

6.找到字符串中所有字母异位词

1.题目

题目链接
在这里插入图片描述
在这里插入图片描述

2.解题思路

在这里插入图片描述
在这里插入图片描述

3.解题代码

//完全理解题意和思路后 写出来的代码
class Solution {
public:vector<int> findAnagrams(string s, string p) {int m = p.size(), n = s.size(), hash1[26] = {0}, hash2[26] = {0};vector<int> ret;for(auto c : p) hash2[c - 'a']++;for(int left = 0, right = 0, count = 0; right < n; right++){hash1[s[right] - 'a']++;if(hash1[s[right] - 'a'] <= hash2[s[right] - 'a']) count++;if(right - left + 1 > m){if(hash1[s[left] - 'a'] <= hash2[s[left] - 'a']) count--;hash1[s[left] - 'a']--;left++;}if(count == m) ret.push_back(left);}return ret;}
};
//第一次看题解写出来的代码,当时不是很懂
class Solution {
public:vector<int> findAnagrams(string s, string p) {vector<int> ans;array<int, 26> cnt_s{};array<int, 26> cnt_p{};for (auto s : p){cnt_p[s - 'a']++;}int n = s.size();int left = 0;for(int right = 0; right < n; right++){cnt_s[s[right] - 'a']++;if (right - left + 1 < p.length())continue;if (cnt_s == cnt_p)ans.push_back(left);cnt_s[s[left] - 'a']--;left++;}return ans;}
};

7.串联所有单词的字串

1.题目

题目链接
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.解题思路

在这里插入图片描述

3.解题代码

class Solution {
public:vector<int> findSubstring(string s, vector<string>& words) {vector<int> ret;unordered_map<string, int> hash1;int n = s.size(), m = words.size(), len = words[0].size();for(auto& ss : words){hash1[ss]++;}for(int i = 0; i < len; i++){unordered_map<string, int> hash2;for(int left = i, right = i, count = 0; right + len <= n; right += len){string in = s.substr(right, len);hash2[in]++;if(hash1.count(in) && hash2[in] <= hash1[in]) count++;if(right - left + 1 > len * m) {string out = s.substr(left, len);if(hash1.count(out) && hash2[out] <= hash1[out]) count--;left += len;hash2[out]--;}if(count == m) ret.push_back(left);}}return ret;}
};

8.最小覆盖字串

1.题目

题目链接
在这里插入图片描述
在这里插入图片描述

2.解题思路

在这里插入图片描述

3.解题代码

class Solution {
public:string minWindow(string s, string t) {unordered_map<char, int> hash1, hash2;int n = s.size();for(auto ss : t) hash1[ss]++;int m = hash1.size(), pos = 0, length = 100001;for(int left = 0, right = 0, count = 0; right < n; right++){char in = s[right];hash2[in]++;if(hash1.count(in) && hash2[in] == hash1[in]) count++;while(count == m) {if(length > right - left + 1){length = right - left + 1;pos = left;}char out = s[left];if(hash1.count(out) && hash2[out] == hash1[out]) count--;hash2[out]--;left++;}}string ret = s.substr(pos, length);if(length == 100001) ret = "";return ret;}
};
http://www.dtcms.com/wzjs/45752.html

相关文章:

  • 做网站和做微商城有什么区别网络营销的优势有哪些?
  • 做代收的网站有哪些广州建网站的公司
  • 省级建设网站搜索引擎优化原理
  • 公司网站怎么建立优化体系磁力狗在线
  • 泰州公司网站建设爆款引流推广软件
  • 网站建设原理与实践seo网站内部优化方案
  • 遂宁网站建设公司最新国际新闻
  • 字号 wordpress南宁优化网站网络服务
  • 网站开发多少钱一天是吉林百度seo公司
  • 网站建设电脑和手机有区别吗长沙官网优化公司
  • 做教育集团的网站建设阿里云免费建站
  • 推广类网站如何创建自己的个人网站
  • 瓯北网站制作公司整合营销理论
  • 北京开发网站建设微信营销软件手机版
  • 深圳做网站优化报价网站流量分析工具
  • 网站登录到wordpress今日最新国际新闻
  • 宁乡电商网站建设收费软件开发网
  • 四川鸿业建设集团网站庆云网站seo
  • php违章网站开发sem培训
  • 政府网站建设信息准确网站优化推广的方法
  • 黄浦区做网站百度首页百度
  • 淘客做网站多少钱竞价系统
  • 石家庄做网站seoapp开发公司
  • 坂田网站建设佛山快速排名
  • 珠海做网站公司有哪些今日头条荆州新闻
  • wordpress侧边栏插件济南网站优化
  • 门户网站建设的请示百度公司名称
  • 昆明做网站公电商营销推广方法
  • 如何寻找做网站的客户软文街官网
  • wordpress 模板 知乎搜索引擎优化的完整过程