lc 3 Longest Substring Without Repeating Characters


3 Longest Substring Without Repeating Characters

Given a string, find the length of the longest substring without repeating characters.

Examples:

  1. Given "abcabcbb", the answer is "abc", which the length is 3.
  2. Given "bbbbb", the answer is "b", with the length of 1.
  3. Given "pwwkew", the answer is "wke", with the length of 3. Note that

    the answer must be a substring, "pwke" is a subsequence and not a

    substring.

动态规划 Accepted##

index数组用来标记该位是否第一次出现,invalid变量用来表示当前研究的子串头部的前一位,length用来表示当前研究的子串的长度。用动态规划的方法可以把时间复杂度降到最低的O(n)。

class Solution {
public:
int lengthOfLongestSubstring(string s) {
vector<int> index(256, -1);
int length =0;
for (int invalid = 0, i = 0; i < s.length(); i++) {
invalid = max(index[s[i]]+1, invalid);
index[s[i]] = i;
length = max(length, i-invalid+1);
}
return length;
}
};

最新文章

  1. Android笔记——Application的作用
  2. datatables中的Options总结(3)
  3. mac-文本编辑器
  4. Oracle外键不加索引会引起死锁问题
  5. delphi 基础之四 delphi 组织结构
  6. SPA初试-1
  7. Codeforces Bubble Cup 8 - Finals [Online Mirror]H. Bots 数学
  8. 不用第三个变量,将a,b两个值互换,会出现什么样的异常?
  9. hdu 4512 吉哥系列故事——完美队形I LCIS
  10. Zend Studio 如何配置本地apache服务器使用xdebug调试php脚本
  11. 看AngularJS
  12. mysql提示Column count doesn&#39;t match value count at row 1错误
  13. UNIX DOMAIN SOCKET效率
  14. PHP的Memcached简单实现
  15. Codeforces.612E.Square Root of Permutation(构造)
  16. py2和py3的区别总结
  17. Django之form总结
  18. 目前最全的IT技术问答、社区、科技服务网站合集
  19. 小米笔记本装MAC(黑苹果),外接USB蓝牙,禁止笔记本自带的蓝牙方法
  20. Hibernate中对象的三种状态及相互转化

热门文章

  1. Java电商项目-5.内容管理cms系统
  2. html5 编辑
  3. Python学习系列之文件操作
  4. Java这样学,Offer随便拿,学习方法和面试经验分享
  5. SSD硬盘安装系统后要做的事
  6. C#.NET 如何快速输入一个对象事件对应的方法
  7. android 加密手机完毕后待机两分钟出现有频率的杂音
  8. uva 10765 Doves and Bombs(割顶)
  9. Oracle新建数据库
  10. Java的Graphics中drawImage与drawLine的坐标区别