python_day_6:20180721
28. 实现strStr()
实现 strStr() 函数。
给定一个 haystack 字符串和一个 needle 字符串,在 haystack 字符串中找出 needle 字符串出现的第一个位置 (从0开始)。如果不存在,则返回 -1。
思路:判断needle是否在haystack里面,如果是的话,用find方法返回位置
class Solution:
def strStr(self, haystack, needle):
if needle in haystack:
return haystack.find(needle)
else:
return -1
520. 检测大写字母
给定一个单词,你需要判断单词的大写使用是否正确。
我们定义,在以下情况时,单词的大写用法是正确的:
1. 全部字母都是大写,比如"USA"。
2. 单词中所有字母都不是大写,比如"leetcode"。
3. 如果单词不只含有一个字母,只有首字母大写, 比如 "Google"。
否则,我们定义这个单词没有正确使用大写字母。
思路:三种判断条件都说清楚了,正好对应upper(),lower(),和title()三种情况
class Solution:
def detectCapitalUse(self, word):
if word==word.upper() or word==word.lower() or word==word.title():
return True
else:return False
class Solution:
def toGoatLatin(self, S):
split=S.split(' ')
result=''
for i in range(len(split)):
result+=(self.goat(split[i])+'a'*(i+1)+' ')
return result[:-1]
def goat(self,word):
if word.lower()[0] in ['a','e','i','o','u']:
return word+'ma'
else:
return word[1:]+word[0]+'ma'