思路:滑动窗口+大小为257的整型数组记录子串元素的位置/哈希表
位置数组:0表示不在子串中,非0表示位置
i 起始位置
j 结束位置

int lengthOfLongestSubstring(string s) {int length = s.size();if (length == 0) return 0;int pos[257] = { 0 };//存储子串中各个元素的位置,如果是0,则不在子串中int max_len = 1;//最大不重复子串长度for (int i = 0, j = 0; i < length && j < length;)//i前标,b后边{if (pos[s[j]] == 0) {//子串中无元素pos[s[j]] = j + 1;j++;}else {//子串中有元素,i后移到重复元素的后一个位置,j往后移一位,i到后来的位置的中间元素的位置清0for (; i < pos[s[j]]+1; i++)pos[s[i]] = 0;pos[s[j]] = j;j++;}max_len = max(max_len, j - i);}return max_len;}

leetcode-3:最长无重复字串相关推荐

  1. python应用:最长无重复字串提取

    一.算法说明 如何获取一个字符串中最大的不重复子串? 假定给定字符串:算法如下: 1)取出第一个字符,放入集合,长度记为 2)取出与比较,如果不在set内,将 加入:回到1) 如果在set内,记录le ...

  2. 查找一段文字中最长的重复字串 – 编程珠玑(排过序的后缀数组的应用)

    转自:https://www.cse.msu.edu/~liyang5/?p=53 <编程珠玑>在第15章"珍珠字符串"一节,给出了一个非常漂亮的实现 – 基于目标字符 ...

  3. 字符串相关处理kmp,前缀数,后缀树,后缀数组,最长回文串,最长重复字串,最长非重复字串

    1. 最长回文串 一般用后缀数组或者后缀树可以解决, 用此方法:http://blog.csdn.net/v_july_v/article/details/6897097 预处理后缀树,使得查询LCA ...

  4. 字符串的最长不重复字串

    (start,i)表示当前发现的最大长度不重复字串,当遍历到i+1时候,看a[i+1]是不是在(start,i)里面(用map),有两种情况 其中map<char,idex> 记录每个字符 ...

  5. LeetCode题——最长无重复子串

    题目 给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度.如: 输入: "abcbabcd" 输出: 4 解释: 因为无重复字符的最长子串是 "abcd&qu ...

  6. LeetCode中等题之无重复字符的最长字串

    题目 给定一个字符串 s ,请你找出其中不含有重复字符的 最长子串 的长度. 示例 1: 输入: s = "abcabcbb" 输出: 3 解释: 因为无重复字符的最长子串是 &q ...

  7. LeetCode.3-最长无重复字符子串(Longest Substring Without Repeating Characters)

    这是悦乐书的第341次更新,第365篇原创 01 看题和准备 今天介绍的是LeetCode算法题中Medium级别的第2题Longest Substring Without Repeating Cha ...

  8. 【Leetcode | 1】3. 无重复字符的最长子串

    这里我们可以建立一个HashMap,建立每个字符和其最后出现位置之间的映射,然后我们需要定义两个变量res和left,其中res用来记录最长无重复子串的长度,left指向该无重复子串左边的起始位置的前 ...

  9. 求字符串中最长无重复字符的子串

    题目:求一个字符串中最长的没有重复字符的子串. 思路:用hash表从i遍历查看包含i的最长 无重复子串. int max_unique_substring2(char * str) {int i,j; ...

最新文章

  1. html5--5-15 绘制阴影
  2. 致女儿人生中第一个儿童节快乐(2018-06-01)
  3. JavaScript精简代码 非一般的写法(转载)
  4. 某八位微型计算机地址为20位,微机原理作业及参考答案
  5. Apache ZooKeeper - ZK的基本特性与节点应用场景一览
  6. HBase之BloomFilter
  7. 李洪强经典面试题146-网络
  8. rabbitmq安装centos7
  9. Linux中Docker部署Redis
  10. All Things Intelligence—Baidu World 2020
  11. 称赞上海禁用一次性酒店用品
  12. Java 登录拦截器
  13. reactos操作系统实现(110)
  14. 线性代数 【23】 概念的深入01 - Points坐标点和Vectors向量
  15. 编写README文档(Markdown)
  16. 产品策划到底是做什么的?
  17. python程序-小说下载
  18. 如何通过组策略统一为公司电脑设置“兼容性视图设置”
  19. 嵌入式系统开发笔记81:嵌入式系统的本质
  20. 谁在痛打“诺顿”落水狗

热门文章

  1. 电商群雄角逐中国会员经济红利,谁能拔得头筹?
  2. 信息系统项目管理师核心考点(八)软件集成技术
  3. C-lodop打印控件 实现批量打印
  4. 2021年美容师(初级)考试总结及美容师(初级)模拟试题
  5. Java Web课程体系
  6. 第十一届蓝桥杯国赛题目
  7. 域权限维持——黄金票据和白金票据
  8. while(true) Thread.Sleep(XX)我通常是用这种写法,有没有更好的写法或者改进
  9. 微信小程序采坑三:输入框设置自动获取焦点后无法自动获取焦点
  10. 安利一个npm包:mddir,可以生成项目的工程结构