Medium
, Array/String
將一個字符轉(zhuǎn)換為數(shù)字嗤练,開頭和結(jié)尾的空格忽略。開頭的‘+’和‘-’需要考慮。
Solution
此題的關(guān)鍵是防止溢出,最大數(shù)為2^31-1
春锋,最小數(shù)為-2^31
class Solution(object):
def myAtoi(self, str):
"""
:type str: str
:rtype: int
"""
if len(str) == 0 : return 0
ls = list(str.strip())
sign = -1 if ls[0] == '-' else 1
if ls[0] in ['-','+'] : del ls[0]
ret, i = 0, 0
while i < len(ls) and ls[i].isdigit() :
ret = ret*10 + ord(ls[i]) - ord('0')
i += 1
return max(-2**31, min(sign * ret,2**31-1))