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

深圳网络营销网站无锡营销型网站制作

深圳网络营销网站,无锡营销型网站制作,中铁建设集团有限公司天津分公司,wordpress独立博客目录 一、题目描述 二、解题思路 1、什么是滑动窗口算法? 2、滑动窗口一般解题模板 三、参考答案 一、题目描述 无重复字符的最长子串 给定一个字符串s ,请你找出其中不含有重复字符的最长子串的长度。 示例 1: 输入: s "abcabcbb"…

目录

一、题目描述

二、解题思路

1、什么是滑动窗口算法?      

2、滑动窗口一般解题模板

三、参考答案


一、题目描述

       无重复字符的最长子串

给定一个字符串s ,请你找出其中不含有重复字符的最长子串的长度。

示例 1:
输入: s = "abcabcbb"
输出: 3 
解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。
示例 2:
输入: s = "bbbbb"
输出: 1
解释: 因为无重复字符的最长子串是 "b",所以其长度为 1。
示例 3:
输入: s = "pwwkew"
输出: 3
解释: 因为无重复字符的最长子串是 "wke",所以其长度为 3。
请注意,你的答案必须是子串的长度,"pwke" 是一个子序列,不是子串。
     
提示:
0 <= s.length <= 5 * 104
s 由英文字母、数字、符号和空格组成
 

 注:子串和子序列的区别,子串是从一个原始字符串中直接提取的、在原字符串中连续的一段字符。例如,在字符串"abc"中,"ab"和"bc"都是其子串。相对地,子序列则由原序列中不必须连续的字符组成,只需保持这些字符在原序列中的相对顺序。如在字符串"abc"中,"ac"构成了一个子序列。

二、解题思路

       本题使用滑动窗口方法来解决。

1、什么是滑动窗口算法?      

       滑动窗口算法是一种通过在特定数据结构上移动“窗口”来执行操作的算法。它主要用于优化时间复杂度,特别是在处理数组和字符串相关问题时表现出色。滑动窗口算法的核心在于使用两个指针(左指针和右指针)来标识当前处理的数据范围,并通过移动这两个指针来调整窗口大小,同时根据具体问题的要求更新中间结果。滑动窗口算法的基本思想是通过维护一个窗口,并通过移动该窗口的两个边界(left 和 right 指针)来处理问题。当右边界扩展到符合某种条件或者到达数据结构的末尾时,再通过移动左边界来缩小窗口,并在此过程中更新所需的结果。这种左右指针的移动方式使得算法能够在单次遍历中解决原本需要嵌套循环的问题,从而将时间复杂度从 O(N^2) 降低到 O(N)。

2、滑动窗口一般解题模板
//外层循环扩展右边界,内层循环扩展左边界
for (int l = 0, r = 0 ; r < n ; r++) {//当前考虑的元素while (l <= r && check()) {//区间[left,right]不符合题意//扩展左边界}//区间[left,right]符合题意,统计相关信息
}

三、参考答案

         根据上述解题思路得到的参考代码如下:

class Solution {public int lengthOfLongestSubstring(String s) {//滑动窗口char[] ss = s.toCharArray();Set<Character> set = new HashSet<>();//去重int res = 0;//结果for(int left = 0, right = 0; right < s.length(); right++) {//每一轮右端点都扩一个。char ch = ss[right];//right指向的元素,也是当前要考虑的元素while(set.contains(ch)) {//set中有ch,则缩短左边界,同时从set集合出元素set.remove(ss[left]);left++;}set.add(ss[right]);//别忘。将当前元素加入。res = Math.max(res, right - left + 1);//计算当前不重复子串的长度。}return res;}
}

       时间复杂度分析:由于每个字符最多会被访问两次(起始指针和结束指针各一次),所以时间复杂度为O(n),其中n为字符串的长度。

       空间复杂度分析:O(∣Σ∣),其中 Σ 表示字符集(即字符串中可以出现的字符),∣Σ∣ 表示字符集的大小。在本题中没有明确说明字符集,因此可以默认为所有 ASCII 码在 [0,128) 内的字符,即 ∣Σ∣=128。我们需要用到哈希集合来存储出现过的字符,而字符最多有 ∣Σ∣ 个,因此空间复杂度为 O(∣Σ∣)。

http://www.hkea.cn/news/913230/

相关文章:

  • 响应式网站建设有利于seo网站发布与推广方案
  • 网页制作教程课件seo推广排名重要吗
  • 小规模纳税人企业所得税怎么征收广州seo招聘
  • 济南企业自助建站网络营销策划公司
  • iis 新建网站 要登录温州seo推广外包
  • 个人想做企业网站备案惠州seo代理商
  • 做公务员题的网站口红的推广软文
  • 福州网站建设 联系yanktcn 04上海百网优seo优化公司
  • 网站备案号如何获得网站建设营销推广
  • 物流网站开发公司西安 做网站
  • 商务信息网站怎么做网络视频营销策略有哪些
  • 社交做的最好的网站怎么开发一个网站
  • 教育品牌网站建设百度搜索推广和信息流推广
  • 虎门专业做网站对网络营销的认识有哪些
  • 投资理财培训网站建设抖音引流推广一个30元
  • 做景观设施的网站网络营销推广要求
  • 携程网站建设进度及实施过程网络营销的缺点及建议
  • 石家庄网站建设哪家专业中国联通腾讯
  • 能访问各种网站的浏览器百度一下网页搜索
  • 自己做网站花多少钱雅虎搜索
  • 哈尔滨招标信息网网站推广优化排名教程
  • 个人可以建论坛网站吗福清网络营销
  • 济南做网站优化价格百度推广网站一年多少钱
  • 做网上商城网站哪家好杭州seo靠谱
  • 做营销网站制作关键词优化课程
  • 网站移动终端建设口碑营销成功案例
  • 美国做试管婴儿 网站推广普通话宣传语
  • 网站备案信息查询系统软文发布平台媒体
  • 泊头哪给做网站的好制作网页的教程
  • 漳州建设银行网站首页在百度上打广告找谁