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

国务院政府网站发展建设的意见综合性b2b电子商务平台网站

国务院政府网站发展建设的意见,综合性b2b电子商务平台网站,农产品网络营销渠道,广州网站建设公司排名题目链接 剑指 Offer II 017. 含有所有字符的最短字符串 hard 题目描述 给定两个字符串 s和 t。返回 s中包含 t的所有字符的最短子字符串。如果 s中不存在符合条件的子字符串,则返回空字符串 ""。 如果 s中存在多个符合条件的子字符串,返回任…

题目链接

剑指 Offer II 017. 含有所有字符的最短字符串 hard

题目描述

给定两个字符串 st。返回 s中包含 t的所有字符的最短子字符串。如果 s中不存在符合条件的子字符串,则返回空字符串 ""

如果 s中存在多个符合条件的子字符串,返回任意一个。

注意: 对于 t中重复字符,我们寻找的子字符串中该字符数量必须不少于 t中该字符数量。

示例 1:

输入:s = “ADOBECODEBANC”, t = “ABC”
输出:“BANC”
解释:最短子字符串 “BANC” 包含了字符串 t 的所有字符 ‘A’、‘B’、‘C’

示例 2:

输入:s = “a”, t = “a”
输出:“a”

示例 3:

输入:s = “a”, t = “aa”
输出:“”
解释:t 中两个字符 ‘a’ 均应包含在 s 的子串中,因此没有符合条件的子字符串,返回空字符串。

提示:

  • 1<=s.length,t.length<=1051 <= s.length, t.length <= 10^51<=s.length,t.length<=105
  • st由英文字母组成

分析:

本题用 滑动窗口 求解。

用哈希表 ht记录 t中字符的出现次数。

再用另一个哈希表 hs记录 s滑动窗口区间的字符出现次数。

用两个指针 ij分别维护滑动窗口的左边界 和 右边界。

如果 hs[s[j]] <= ht[s[j]],说明此时的 s[j]依旧是有效字符,区间有效字符数 cnt += 1

如果 hs[s[i]] > ht[s[i]],说明此时的区间内部字符已经超过了 t,所以收缩左区间,hs[s[i]]--i++

如果 cnt == t.size(),说明此时的区间 [l,r]包含了 t的所有字符,所以此时的 s.substr(i,j-i+1)可作为答案之一。

时间复杂度: O(n)O(n)O(n)

代码:

class Solution {
public:string minWindow(string s, string t) {int m = s.size() , n = t.size();if(m < n) return "";unordered_map<char,int> ht,hs;for(auto &c:t) ht[c]++;int len = 1e9,idx = -1;int cnt = 0;for(int i = 0,j = 0;j < m;j++){hs[s[j]]++;if(hs[s[j]] <= ht[s[j]]) cnt++;while(hs[s[i]] > ht[s[i]]){hs[s[i]]--;i++;}if(cnt == n){if(j - i + 1 < len){idx = i;len = j - i + 1;}}}return idx == -1 ? "" : s.substr(idx,len);}
};
http://www.ds6.com.cn/news/43291.html

相关文章:

  • 网站版建设户外广告
  • 厦门电商培训安卓优化大师破解版
  • 怎样制作表白网站百度指数指的是什么
  • 公司网站建设的百度服务电话在线人工
  • 兰州酒店网站建设东莞网络公司排行榜
  • 北京专业做网站百度应用市场官网
  • 翻译网站怎么做搜收录批量查询
  • 汕头做网站优化的公司湖南专业关键词优化
  • 用java怎么做游戏下载网站吗上海网站排名优化怎么做
  • 网站制作多少页北京seo推广外包
  • 做网站找哪家好要钱吗域名收录提交入口
  • 中国交通建设集团有限公司校招保定关键词优化软件
  • 设计做笔记的网站黄页推广2021
  • 重庆汽车网站建设宁德市古田县
  • 怎么在别人网站做跳转深圳seo优化排名
  • 网站建设案例分析谷歌app下载 安卓
  • 重庆营销网站建设公司排名站长工具之家
  • 佛山网站建设公司大全自动app优化
  • 网站建设与制作模板雷神代刷网站推广
  • 响应式网站制作公司缅甸今日新闻
  • 郑州专业做网站多少钱营销技巧培训ppt
  • 做问卷调查的是哪个网站网站运营维护的基本工作
  • easyui做的网站李守洪
  • 网站蜘蛛池怎么做的百度网盘app手机版
  • 荣成市有做网站的吗网站推广服务商
  • 做公司的网站有哪些东西网络公司排名
  • 二手书网站建设微信小程序开发详细步骤
  • seo技术团队seo诊断
  • unity做网站网络广告类型
  • 专题网站可以做什么微信seo什么意思