28.实现strStr()
class Solution:
def strStr(self, haystack, needle):
"""
:type haystack: str
:type needle: str
:rtype: int
"""
if(needle==''):
return 0
for i in range(len(haystack)):
if(haystack[i]!=needle[0] and i+len(needle)==len(haystack)):
break
if(haystack[i]==needle[0]):
if(haystack[i:i+len(needle)]==needle):
return i
return -1
35.搜索插入位置
class Solution:
def searchInsert(self, nums, target):
"""
:type nums: List[int]
:type target: int
:rtype: int
"""
if(target in nums):
return nums.index(target)
else:
for i,value in enumerate(nums):
if(value>target):
return i
return len(nums)
38.报数
class Solution:
def countAndSay(self, n):
"""
:type n: int
:rtype: str
"""
say=['1','1']
for i in range(1,n):
count_and_say=''
a=say[i]
#print('a:%s'%(a))
count=1
if(len(a)==1):
count_and_say+='1'+a
else:
for j in range(len(a)):
if(j==len(a)-1 or a[j+1]!=a[j]):
count_and_say+=str(count)+str(a[j])
count=1
else:
count+=1
#print('count:%s'%(count))
say.append(count_and_say)
return say[n]