將乙個字串轉換成乙個整數,要求不能使用字串轉換整數的庫函式。 數值為0或者字串不是乙個合法的數值則返回0輸入乙個字串,包括數字字母符號,可以為空
如果是合法的數值表達則返回該數字,否則返回0
+21474836471a33
21474836470
注意邊界條件:
# -*- coding:utf-8 -*-
class solution:
def strtoint(self, s):
# write code here
if s=='':
return 0
l=len(s)
minus=1
if s[0] == '+':
if len(s) == 1:
return 0
s = s[1:]
l -= 1
if s[0] == '-':
if len(s) == 1:
return 0
s = s[1:]
l -= 1
minus = -1
num=0
for string in s:
if string>="0" and string<="9":
num=num*10+(ord(string)-ord("0"))
else:
return 0
if minus==-1 and num>0x80000000:
return 0
if minus==1 and num>0x7fffffff:
return 0
if minus==1:
return num
else:
return num*-1
劍指offer 67 把字串轉換成整數
請你寫乙個函式strtoint,實現把字串轉換成整數這個功能。忽略所有行首空格,找到第乙個非空格字元,可以是 表示是正數或者負數,緊隨其後找到最長的一串連續數字,將其解析成乙個整數 整數後可能有任意非數字字元,請將其忽略 如果整數長度為0,則返回0 如果整數大於int max 2 31 1 請返回i...
劍指 Offer 67 把字串轉換成整數
題目 寫乙個函式 strtoint,實現把字串轉換成整數這個功能。不能使用 atoi 或者其他類似的庫函式。1 首先,該函式會根據需要丟棄無用的開頭空格字元,直到尋找到第乙個非空格的字元為止。2 當我們尋找到的第乙個非空字元為正或者負號時,則將該符號與之後面盡可能多的連續數字組合起來,作為該整數的正...
劍指offer 67 把字串轉換成整數
寫乙個函式 strtoint,實現把字串轉換成整數這個功能。不能使用 atoi 或者其他類似的庫函式。首先,該函式會根據需要丟棄無用的開頭空格字元,直到尋找到第乙個非空格的字元為止。當我們尋找到的第乙個非空字元為正或者負號時,則將該符號與之後面盡可能多的連續數字組合起來,作為該整數的正負號 假如第乙...