当前位置 博文首页 > 安安csdn的博客:LeetCode:第3题 无重复字符的最长子串 python
给定一个字符串,请你找出其中不含有重复字符的?最长子串?的长度。 示例?1: 输入: "abcabcbb" 输入: "bbbbb" 输入: "pwwkew" 来源:力扣(LeetCode) |
Python函数参数中的冒号与箭头在一些Python的工程项目中,我们会看到函数参数中会有冒号,有的函数后面会跟着一个箭头,你可能会疑惑,这些都是什么东西? 其实函数参数中的冒号是参数的类型建议符,告诉程序员希望传入的实参的类型。函数后面跟着的箭头是函数返回值的类型建议符,用来说明该函数返回的值是什么类型。 更官方的解释:此为type hints,是Python 3.5新加的功能,作用如上所述,官方文档为?https://www.python.org/dev/peps/pep-0484/ 值得注意的是,类型建议符并非强制规定和检查,也就是说即使传入的实际参数与建议参数不符,也不会报错。我认为类型建议符的作用更多的体现在软件工程方面:在多人合作的时候,我们对他人开发的代码并不熟悉,没有对类型的解释说明的话,往往需要花费更多的时间才能看出函数的参数和返回值是什么类型,有了说明符,可以方便程序员理解函数的输入与输出(具体涉及到的工作,比如静态分析与代码重构)。 参考:https://www.cnblogs.com/ArsenalfanInECNU/p/10724203.html |
知识点:滑动窗口 |
##anan
##2020.1.31
class Solution:
# def lengthOfLongestSubstring(self, s: str) -> int:
def lengthOfLongestSubstring(self, s):
#print(s)
sub = ''
sub_len = len(sub)
for i in range(len(s)):
#print(s[i])
for j in range(len(sub)):
if(s[i] == sub[j]):
sub = sub[j+1:]
#print("sub", sub)
break
sub+=s[i]
#print("final sub:", sub)
sub_len = len(sub) if(len(sub) > sub_len) else sub_len
#print("sub_len:", sub_len)
return sub_len
s = Solution()
s.lengthOfLongestSubstring("abcabcbb")
?
cs