【算法笔记】不用库函数手撕力扣之力扣3:无重复字符的最长子串

题目链接
题解
方法1:数组标注
主要思路
使用一个数组minIndex(长度256),当前遍历位置下,每个字符所能组成的无重复最长字串在整个字符串中的最小开始下标,沿着整个字符串开始遍历,每遍历一个字符,以这个字符为结尾的最长无重复字符的最长子串就是:当前遍历下标-minIndex[当前字符]。时间复杂度为O(n)关于minIndex数组的维护为 minIndex[当前字符] = max(当前字符出现的最后位置,当前遍历过程中最后一个重复字符对出现的位置)
代码
int minIndex[300];
int lengthOfLongestSubstring(char * s){
for(int i = 0; i < 300; i++) { minIndex[i] = -1; } int maxLen = 0; for(int i = 0;

【算法笔记】不用库函数手撕力扣之力扣3:无重复字符的最长子串最先出现在Python成神之路

版权声明:
作者:lichengxin
链接:https://www.techfm.club/p/12715.html
来源:TechFM
文章版权归作者所有,未经允许请勿转载。

THE END
分享
二维码
< <上一篇
下一篇>>