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

民宿网站的建设网站建设投入及费用

民宿网站的建设,网站建设投入及费用,代做网站灰色关键词,建程网土石方工程题目链接 3. 无重复字符串的最长子串 题目描述 给定一个字符串 s ,请你找出其中不含有重复字符的 最长 子串 的长度。 示例 1: 输入: s “abcabcbb” 输出: 3 解释: 因为无重复字符的最长子串是 “abc”,所以其长度为 3。 示例 2: 输入: s “bbb…

题目链接

  • 3. 无重复字符串的最长子串

题目描述

给定一个字符串 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 由英文字母、数字、符号和空格组成

求解思路

  • 滑动窗口:规定i为左指针,rk为右指针,每次for循环左指针向右移动一格,然后通过while循环来找到以i为起点的最长无重复子串长度,并通过哈希集合来存储当前区间内的不重复元素,以便下次遍历的时候可以重复使用。

实现代码

class Solution {public int lengthOfLongestSubstring(String s) {// 哈希集合,记录每个字符是否出现过Set<Character> occ = new HashSet<Character>();int n = s.length();// 右指针,初始值为 -1,相当于我们在字符串的左边界的左侧,还没有开始移动int rk = -1, ans = 0;for (int i = 0; i < n; ++i) {if (i != 0) {// 左指针向右移动一格,移除一个字符occ.remove(s.charAt(i - 1));}while (rk + 1 < n && !occ.contains(s.charAt(rk + 1))) {// 不断地移动右指针occ.add(s.charAt(rk + 1));++rk;}// 第 i 到 rk 个字符是一个无重复字符子串ans = Math.max(ans, rk - i + 1);}return ans;}
}
http://www.yayakq.cn/news/727979/

相关文章:

  • 河南郑州创建网站公司凡客v 网上商城
  • 自己做网站app建设网证书查询平台免费
  • 做电子商务网站建设工资多少网站建设公司seo关键词
  • 中山快速做网站费用网站建设费用会计处理
  • 浙江省建设信息港的网站wordpress 头像缓存到本地
  • 如乐网站南宁关键词排名公司
  • 企业网站开发意义营销型网站制作建设
  • 网站建设 视频网页建设推荐
  • 网站备案为何要关站北京正规制作网站公司
  • 建设部咨询资质网站windows优化大师免费版
  • 小说网站代理做涉黄的视频网站用什么服务器
  • 做网站什么颜色和蓝色配余姚企业网站建设公司
  • 鲜花加盟网站建设济南网站优化建设
  • 东莞商贸公司寮步网站建设价格广州定制网站建设公司
  • 单位网站建设典型材料南平做网站
  • 重庆建设工程造价管理协会网站网站seo策划方案设计
  • 建设网站的网址西宁网络推广服务网
  • 中国建设银行网站客户注册提供网站建设运营公司资质
  • redis做网站怎么制作钓鱼网站链接
  • 网站投注员怎么做广州最好的网站设计
  • 博星卓越网站建设实验代码网站 后台模板
  • 青羊区建设局网站网站建设方案书doc模板
  • 在线快速建站百度公司招聘信息
  • 网站做弹幕广告外贸网站建设公司报价
  • 网站建设合同 含维护费计算机学前端好还是后端好
  • 怎么做木马网站合浦建设局网站
  • php网站制作费用请解释网站开发的主要流程
  • 网站建设具体工作如何写代码做网站6
  • 安平谁做网站好网页版梦幻西游全新联动
  • 购物网站后台管理系统模板浏览器做单页网站项目