博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
[LintCode] Longest Substring Without Repeating Characters
阅读量:6292 次
发布时间:2019-06-22

本文共 1272 字,大约阅读时间需要 4 分钟。

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

Example

For example, the longest substring without repeating letters for"abcabcbb" is "abc", which the length is 3.

For "bbbbb" the longest substring is "b", with the length of 1.

O(n) time

LeetCode上的原题,请参见我之前的博客。

解法一:

class Solution {public:    /**     * @param s: a string     * @return: an integer      */    int lengthOfLongestSubstring(string s) {        int res = 0, left = -1;        vector
m(256, -1); for (int i = 0; i < s.size(); ++i) { left = max(left, m[s[i]]); m[s[i]] = i; res = max(res, i - left); } return res; }};

解法二:

class Solution {public:    /**     * @param s: a string     * @return: an integer      */    int lengthOfLongestSubstring(string s) {        int res = 0, left = 0, right = 0;        unordered_set
st; while (right < s.size()) { if (!st.count(s[right])) { st.insert(s[right++]); res = max(res, (int)st.size()); } else { st.erase(s[left++]); } } return res; }};

本文转自博客园Grandyang的博客,原文链接:,如需转载请自行联系原博主。

你可能感兴趣的文章
Django 文件下载功能
查看>>
走红日本 阿里云如何能够赢得海外荣耀
查看>>
磁盘空间满引起的mysql启动失败:ERROR! MySQL server PID file could not be found!
查看>>
点播转码相关常见问题及排查方式
查看>>
[arm驱动]linux设备地址映射到用户空间
查看>>
弗洛伊德算法
查看>>
【算法之美】求解两个有序数组的中位数 — leetcode 4. Median of Two Sorted Arrays
查看>>
精度 Precision
查看>>
Android——4.2 - 3G移植之路之 APN (五)
查看>>
Linux_DHCP服务搭建
查看>>
[SilverLight]DataGrid实现批量输入(like Excel)(补充)
查看>>
秋式广告杀手:广告拦截原理与杀手组织
查看>>
翻译 | 摆脱浏览器限制的JavaScript
查看>>
闲扯下午引爆乌云社区“盗窃”乌云币事件
查看>>
02@在类的头文件中尽量少引入其他头文件
查看>>
JAVA IO BIO NIO AIO
查看>>
input checkbox 复选框大小修改
查看>>
BOOT.INI文件参数
查看>>
vmstat详解
查看>>
新年第一镖
查看>>