无重复字符的最长子串(Python之暴力求解)

例题:

给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。

示例:

(1)

输入: “abcabcbb”

输出: 3

解释: 因为无重复字符的最长子串是 “abc”,所以其长度为 3。

(2)

输入: “bbbbb”

输出: 1

解释: 因为无重复字符的最长子串是 “b”,所以其长度为 1。

输入: “pwwkew”

输出: 3

(3)

输入: “pwwkew”

输出: 3

解释: 因为无重复字符的最长子串是 “wke”,所以其长度为 3。

请注意,你的答案必须是 子串 的长度,“pwke” 是一个子序列,不是子串。

分析:

要想求得最长无重复字符,那么我们需要遍历这一字符串,例如示例三中“pwwkew”

在我们脑海里就是中就是先从序列为一的p开始遍历一次累加字符串,只要累加的字符串无重复字母,那么就继续累加,直到结束或者有重复字母为止,若遇到重复字母,那么就要从序列为2的w开始,继续这样操作下去,比较一下哪一种的长度最长,并输出长度即可,虽然,这种方法比较容易理解,但是方法耗时较长!(在下一遍博客中将会介绍省时的一种方法,请游客们持续关注动态)

重要方法:

(1)在Python中有一个非常好的方法可以去除相等的字母或者数字等的方法,那就是集合,我们知道初中学过的集合是不允许有相同元素的,每个元素必须为一,Python中的集合也有这样的性质。

(2)这个代码需要用到俩从for循环来进行操作!(具体请参考代码注释)

代码:

class Solution:

def lengthOfLongestSubstring(self, s: str) -> int:

a1=set([]) #第一个空集合

a2=set([]) #第二个空集合

length=0 #计算最长子字符创长度

for i in range(len(s)):

a1=set(s[i])

a2=set(s[i])#将第i个元素分别添加到a1,a2集合当中去

for j in range(i+1,len(s)):

a1.add(s[j])

if len(a1)>len(a2):#这行代码巧妙的运用来Python中的集合

a2.add(s[j])

else:

break

if len(a2)>length:

length=len(a2)

return length #返回最大无重复子字符串

#笔者认为难以理解的是两个for循环语句中的内容,建议游客可以举一个字符串来在草稿纸上认真根据代码步骤来实现并加以理解,如果有不懂的地方或者错误的地方请大家留言!

著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

python输入多个字符串、输入最长的一串_无重复字符的最长子串(Python之暴力求解)...相关推荐

  1. python重复字符串n次的函数_LeetCode_Python(3)_无重复字符的最长子串

    需求 给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度. 示例 1: 输入: "abcabcbb" 输出: 3 解释: 因为无重复字符的最长子串是 "abc ...

  2. python学习3. 无重复字符的最长子串(滑动窗口)

    makcooo 2019-04-19 15:47:32  271  收藏 分类专栏: python 版权 给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度. 示例 1: 输入: &quo ...

  3. 快手校招算法题 无重复字符的最长子串

    时间限制:5秒 空间限制:32768K 给定一个字符串,请找出其中长度最长且不含有重复字符的子串,计算该子串长度. 输入描述: 输入类型为字符串,例如"abcde" 输出描述: 输 ...

  4. python字符串中最长的连续升序子串_Leetcode刷题练Python无重复字符的最长子串

    这是一道字符串处理算法的题目,在日常编程中,处理字符串是常见任务.该题目会涉及到一个概念"滑动窗口". 一.题目描述 给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度 ...

  5. c++ 数组的输入遇到特定字符停止输入_滑动窗口思维--挑战“无重复字符的最长子串”

    文章来源: 饭饭的Python学习之路 作者: 一粒米饭 今天要挑战的是"无重复字符的最长子串". 难度:中等 题目描述: 给定一个字符串,请你找出其中不含有重复字符的 最长子串 ...

  6. python练习题:给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度

    题目: 给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度. 题目解析: 有一个字符串,长度不定, 要找出不重复字符串的长度,我们可以这么假设,先找到第一个下标,然后从后面拿到元素的下标对 ...

  7. 无重复最长子串python_leetCode 无重复字符的最长子串 python(Longest Substring Without Repeating Characters) python...

    给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度. Default 示例 1: 输入: "abcabcbb" 输出: 3 解释: 因为无重复字符的最长子串是 &quo ...

  8. 刷题练习记录(3)——无重复字符的最长子串(JAVA 和 Python)——set()函数/集合...

    [题号003]无重复字符的最长子串 给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度. 示例 1: 输入: "abcabcbb" 输出: 3 解释: 因为无重复字符的 ...

  9. python经典算法题:无重复字符的最长子串

    题目:无重复字符的最长子串. 给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度. 示例 1: 输入: "abcabcbb" 输出: 3 解释: 因为无重复字符的最长子 ...

最新文章

  1. Activex、OLE、COM、OCX、DLL之间区别、联系
  2. Iaas-Paas-Saas
  3. spring boot 整合security
  4. RO38 –比较RemObjects SDK 通道
  5. 解析H.264视频编解码DSP实现与优化
  6. 纪中2016.10.6比赛不明总结
  7. java中的tcp与多线程_Java5 多线程与TCP编程实践
  8. ajax ashx 请选择文件,ajax+jquery+ashx如何实现上传文件
  9. 如果调整临时文件限制temp_file_limit
  10. 网络传输---HttpURLConnection
  11. 关于OpenCV使用遇到的问题集(多数为转载)
  12. 计算机考研各个学校专业课,【择校必看】十三所计算机专业课只考数据结构的985院校!...
  13. 小水智能-智能楼宇智慧建筑3d可视化,让钢铁水泥也可以沟通交流
  14. 3.2.CPU中的实模式
  15. Fragment already added 问题
  16. dede php低版本出现500错误,织梦后台生成文章提示500错误怎么办
  17. Java 小练习(图形面积计算器)
  18. 我们请来了2017 NIPS大会发文数全球前3的华人教授,讲解网络数据的表征学习(视频+PPT)
  19. LVS均衡负载(三) LVS后端服务健康状态检查
  20. 格局决定结局,态度决定高度

热门文章

  1. 使用VMware VSphere WebService SDK进行开发 (一)——基本信息阐述
  2. MySQL的基本查询(二)
  3. I/O多路转接之select
  4. 【线上分享】基于人眼主观视觉的画质评价与提升
  5. Google Duo采用WaveNetEQ填补语音间隙
  6. 「递归」第6集 | 是鹅厂技术青年的模样
  7. 腾讯基于全时态数据库技术的数据闪回
  8. php中使用hash_hmac函数实现HMAC-SHA1签名算法的来龙去脉
  9. mysql的分页查询
  10. JAVA程序设计----异常