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

深圳网站设计收费标准南京市招办南京网站设计

深圳网站设计收费标准,南京市招办南京网站设计,做网络推广,网站简约式布局特点博主主页: 码农派大星. 数据结构专栏:Java数据结构 数据库专栏:数据库 JavaEE专栏:JavaEE 软件测试专栏:软件测试 关注博主带你了解更多知识 Problem: 76. 最小覆盖子串 解析: 先把 ss 和 tt 字符串转化为字符数组 char[] s ss.toCharArray(); char[] t tt.toCharArra…

 博主主页: 码农派大星.

    数据结构专栏:Java数据结构

 数据库专栏:数据库

JavaEE专栏:JavaEE

软件测试专栏:软件测试

关注博主带你了解更多知识

Problem: 76. 最小覆盖子串

解析: 

先把 ss 和 tt 字符串转化为字符数组

char[] s = ss.toCharArray();

char[] t = tt.toCharArray();

再用数组模拟哈希表,统计各字符出现个数/频次, 为什么选数组模拟,而不是直接选用哈希表, 因为数组的时间复杂度为O(1), 哈希表时间复杂度虽然也是O(1),但是遇到哈希冲突时,时间复杂度就会变为O(n)

创建hash1数组 遍历 t数组字符出现个数/频次 , 并统计字符种类(kinds)

创建hash2数组 统计窗口中字符出现次数.频次

开始遍历 s数组 创建left right count 分别为0

进窗口前提:

char in = s[right] hash2[in]++

进窗口: 比较hash1和hash2字符是否相等, 如果相等种类 count ++

当 窗口hash2种类数 等于 hash1种类数时 说明此时窗口是一个可能覆盖的子串,但是我们要求的是最小子串

判断 如果 窗口长度 < minlen

则更新begin = left , minlen = right - left+1, 求包含所有t字符的最小窗口

出窗口前提: char out = s[left] ,left++

出窗口: if (hash2[out] == hash1[out]) count --

hash2[out]--

最后统计结果:

如果bengin 为起始-1 时 直接返回空串

否则 返回 begin位置 到 begin+minlen 位置字符串

复杂度分析:

代码: 

class Solution {public String minWindow(String ss, String tt) {char[] s = ss.toCharArray();char[] t = tt.toCharArray();if(ss.equals(tt)) return ss;int[] hash1 = new int[200]; //统计t字符出现的频次int kinds = 0;for(char ch : t){if(hash1[ch] == 0) kinds++;hash1[ch]++;}int[] hash2 = new int[200];//统计窗口中字符频次int minlen = Integer.MAX_VALUE, begin = -1;for(int left = 0, right = 0,count = 0; right < s.length; right++){char in = s[right];hash2[in]++;//进窗口+维护if(hash2[in] == hash1[in]) count++;while(kinds == count){//判断if(right - left+1 < minlen){//更新结果begin = left;minlen = right-left+1;}char out = s[left];left++;//出窗口+维护if(hash2[out] == hash1[out]) count--;hash2[out]--;}}if(begin == -1) return new String();else return ss.substring(begin,begin+minlen);}
}

http://www.dtcms.com/wzjs/566437.html

相关文章:

  • 物流网站查询建网站买什么主机
  • 洛阳网站建设哪家专业徐州市工程招标网
  • 国际学校网站建设网络培训内容
  • 健康咨询类网站模板北京互联网网站建设价格
  • 做一个网站难不难专业苏州网站建设
  • 只放一个图片做网站做网站电话说辞
  • 夏津网站建设价格网站安全建设策划书
  • 云主机如何做网站企业网站建设分为那几个阶段
  • 自己做免流网站住房与建设注册中心网站
  • 建设部网站注册师ui设计交付物都包含哪些
  • 做网站用的什么服务器什么是网页版登录
  • 上饶市网站建设公司wordpress 首页显示分类
  • dw制作企业网站网站怎么设置404页面
  • 怎么做兼职网站吗高端购物网站建设
  • 济宁网站建设 济宁智雅互联网公司排名1000
  • 一个域名访问不同的网站网页设计作品聚散
  • 中国做网站找谁购物网站开发案例教程
  • 个人网站需要什么内容织梦网站后台视频教程
  • 河南网站公司电子商务与网络营销论文
  • 顺德微网站建设苏州网站制作推广
  • 免费行情软件app网站直播下载玩具外贸网站模板
  • 小说类网站怎么做广州专业展台制作价格
  • 好的网站布局那个网站做直播好
  • win10 电脑做网站服务器吗长沙市停课最新消息
  • 连云港建设公司网站app怎么推广运营
  • 云虚拟主机和网站建设网销的网站建设与管理
  • 注册公司网站模版网络推广培训班课程
  • 网络产品服务的提供者不得设置天津网站优化流程
  • 购物网站图标厦门优化网站
  • 以营销导向型建设网站方案交换机做网站