Python简单实现查找一个字符串中最长不重复子串的方法
2018-03-26 11:48
1151 查看
本文实例讲述了Python简单实现查找一个字符串中最长不重复子串的方法。分享给大家供大家参考,具体如下:
刚结束的一个笔试题,很简单,不多说简单贴一下具体的实现:
#!usr/bin/env python #encoding:utf-8 ''''' __Author__:沂水寒城 功能:找出来一个字符串中最长不重复子串 ''' def find_longest_no_repeat_substr(one_str): ''''' 找出来一个字符串中最长不重复子串 ''' res_list=[] length=len(one_str) for i in range(length): tmp=one_str[i] for j in range(i+1, length): if one_str[j] not in tmp: tmp+=one_str[j] else: break res_list.append(tmp) res_list.sort(lambda x,y:cmp(len(x),len(y))) return res_list[-1] if __name__ == '__main__': one_str_list=['120135435','abdfkjkgdok','123456780423349'] for one_str in one_str_list: res=find_longest_no_repeat_substr(one_str) print '{0}最长非重复子串为:{1}'.format(one_str, res)
结果如下:
120135435最长非重复子串为:201354
abdfkjkgdok最长非重复子串为:abdfkj
123456780423349最长非重复子串为:123456780
更多关于Python相关内容可查看本站专题:《Python字符串操作技巧汇总》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》
希望本文所述对大家Python程序设计有所帮助。
您可能感兴趣的文章:
相关文章推荐
- Python实现针对给定字符串寻找最长非重复子串的方法
- 自己写的一个后缀树算法查找一个字符串的最长重复子串
- 在字符串中查找连续重复的最长子串的C++实现
- 定义一个栈的数据结构,实现min函数,要求push,pop,min时间复杂度是0(1);找出字符串中的最长子串,要求子串不含重复字符,时间复杂度是O(n);
- JavaScript自定义函数实现查找两个字符串最长公共子串的方法
- 定义一个栈的数据结构,实现min函数,要求push,pop,min时间复杂度是0(1);找出字符串中的最长子串,要求子串不含重复字符,时间复杂度是O(n);
- python实现求两个字符串的最长公共子串方法
- Python实现判断一个字符串是否包含子串的方法总结
- 【字符串问题】求一个字符串中重复出现的最长的子串
- 给定一个字符串,输出最长的重复子串
- 查找一个字符串中最大重复子串(C语言版)
- 找出一个字符串中出现的重复的最长的字符子串
- 寻找一个字符串中最长的重复子串,如 abcdabc 最长重复串 是abc
- 【寻找一个字符串中最长的重复子串】
- 【每天学点算法题10.17】寻找一个字符串中的最长重复子串
- 在字符串中查找最长重复子串
- 给定一个字符串,求出其最长的重复子串。
- 实现一个字符串查找子串的函数
- 在一个字符串中寻找到最长重复子串(1)
- 【编程珠玑】第十五章--字符串:用后缀数组查找最长不重叠的重复子串