算法练习(3)-寻找最大的不重复子串
2021-05-04 10:30
标签:etc 开头 最大 return 重复 sub 缓冲 move bst 要求:给定1个字符串,比如ababc,要求找出“第1个最长的不重复子串”,即:"abc" 思路:遍历每个字符,寻找以它开头的不重复子串,遍历过程中,可以用一个Set作为缓冲区,存放曾经处理过的起始字符串。 过程: (a)babc -> 子串为a (ab)abc -> 子串为ab (ab)abc -> 发现重复字符a,准备从第2个字符开始新一轮查找 a(b)abc -> 子串为b a(ba)bc -> 子串为ba a(ba)bc -> 发现重复字符b,准备第第3个字符开始新一轮查找 ab(a)bc -> 子串为a ab(ab)c -> 子串为ab ab(abc) -> 查找结束 代码: 算法练习(3)-寻找最大的不重复子串 标签:etc 开头 最大 return 重复 sub 缓冲 move bst 原文地址:https://www.cnblogs.com/yjmyzz/p/13195620.html /**
* 查找最长不重复子串
*
* @param s
* @return
*/
public String getFirstLongestSubstring(String s) {
System.out.println(s);
char[] arr = s.toCharArray();
Set
下一篇:python之文件的读取与写入
文章标题:算法练习(3)-寻找最大的不重复子串
文章链接:http://soscw.com/index.php/essay/82230.html