leetcode_3Longest Substring Without Repeating Characters
来源:互联网 发布:苏宁物流成本数据分析 编辑:程序博客网 时间:2024/06/06 09:45
题目:
Given a string, find the length of the longest substring without repeating characters.
Examples:
Given "abcabcbb"
, the answer is "abc"
, which the length is 3.
Given "bbbbb"
, the answer is "b"
, with the length of 1.
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.
Subscribe to see which companies asked this question.
——————————————————————————————————————————————————————————————————————————
没有什么要求,那就用最简单的for循环吧~
代码:
class Solution {public: int lengthOfLongestSubstring(string s) { vector<char> st; if(s.size()==1){ return 1; } for(int i = 0; i < s.size(); i++){ vector<char> inst; inst.push_back(s[i]); for(int j = i+1; j < s.size();j++){ int flag = 0; for(int k = 0; k < inst.size(); k++){ if(inst[k] == s[j]){ flag = 1; break; } } if(flag == 0){ inst.push_back(s[j]); if(inst.size() > st.size()){ st = inst; } } else{ if(inst.size() > st.size()){ st = inst; } break; } } } return st.size(); }};
for里套for。但是这样写中间的某些细节也容易搞错。哎。
上传后一看速度排名只战胜了百分之七点几。。。额。
意识到这样做是不够的。想其他方法也想不出来,就参考一下吧。
别人的思路:用map存每个数字对应的下标。长度就是两个数下标之差+1,也就是这个数与前一个数的前一位的(start)下标之差。
每次找到重复的之后,start变为这个重复的以前的数字。
厉害了
class Solution {public: int lengthOfLongestSubstring(string s) { map<char, int> charMap; int start = -1; int maxLen = 0; for (int i = 0; i < s.size(); i++) { if (charMap.count(s[i]) != 0) { start = max(start, charMap[s[i]]); } charMap[s[i]] = i; maxLen = max(maxLen, i-start); } return maxLen; }};得自习想想这个代码的思想。
0 0
- LeetCode_3Longest Substring Without Repeating Characters
- leetcode_3Longest Substring Without Repeating Characters
- Longest Substring Without Repeating Characters
- Longest Substring Without Repeating Characters
- Longest Substring Without Repeating Characters
- Longest Substring Without Repeating Characters
- Longest Substring Without Repeating Characters
- String_Longest Substring Without Repeating Characters
- Longest Substring Without Repeating Characters
- Longest Substring Without Repeating Characters
- Longest Substring Without Repeating Characters
- Longest Substring Without Repeating Characters
- Longest Substring Without Repeating Characters
- Longest Substring Without Repeating Characters
- Longest Substring Without Repeating Characters
- Longest Substring Without Repeating Characters
- Longest Substring Without Repeating Characters
- Longest Substring Without Repeating Characters
- 解决Ubuntu网络连接上了但是上不了网
- 2017寒假小结
- [LeetCode] 87. Scramble String
- IO流之RandomAccessFile
- 趣谈并发1:全面认识 Thread
- leetcode_3Longest Substring Without Repeating Characters
- maven+nexus+Linux配置Maven私服
- 解决Exception: org.apache.hadoop.io.nativeio.NativeIO$Windows.access0(Ljava/lang/String;I)Z 等一系列问题
- <7>python学习笔记——字典
- 1059. Prime Factors (25).md
- 数据库系列~NoSQL数据库~MongoDB数据库安装
- 快速mock-api最简单实践案例
- poj 3252 Round Numbers(数位dp)
- android MD新控件之toolbar