劍指offer 第49題 把字串轉換成整數

2021-09-12 03:35:36 字數 724 閱讀 4599

將乙個字串轉換成乙個整數(實現integer.valueof(string)的功能,但是string不符合數字要求時返回0),要求不能使用字串轉換整數的庫函式。 數值為0或者字串不是乙個合法的數值則返回0。

輸入描述:

輸入乙個字串,包括數字字母符號,可以為空
輸出描述:

如果是合法的數值表達則返回該數字,否則返回0
首先判斷正負

然後遍歷字串,如果不是數字就返回0

每次的更新規則相當於從高位向低位進行,就是乘以10加上當前數字

class solution:

def strtoint(self, s):

# write code here

if not s:

return 0

dic =

res = 0

is_positive = 1

if s[0] == '+':

s = s[1:]

elif s[0] == '-':

is_positive = -1

s = s[1:]

for i in s:

if i not in dic:

return 0

res = res * 10 + dic[i]

return is_positive * res

49 劍指offer 把字串轉換成整數

題目描述 將乙個字串轉換成乙個整數,要求不能使用字串轉換整數的庫函式。數值為0或者字串不是乙個合法的數值則返回0 輸入描述 輸入乙個字串,包括數字字母符號,可以為空 輸出描述 如果是合法的數值表達則返回該數字,否則返回0 輸入例子 2147483647 1a33 輸出例子 2147483647 0 ...

劍指offer 49 把字串轉換成整數

題目 將乙個字串轉換成乙個整數,要求不能使用字串轉換整數的庫函式。數值為0或者字串不是乙個合法的數值則返回0 輸入描述 輸入乙個字串,包括數字字母符號,可以為空 思路 如果有正負號,先處理正負號,再處理判斷是否為合法字元,思路看不懂可以看 附有注釋,請原諒博主我太懶 class solution e...

劍指offer系列(49) 把字串轉換成整數

題目描述 將乙個字串轉換成乙個整數,要求不能使用字串轉換整數的庫函式。數值為0或者字串不是乙個合法的數值則返回0 輸入乙個字串,包括數字字母符號,可以為空如果是合法的數值表達則返回該數字,否則返回0樣例輸出 2147483647 0 思路分析 題目描述過於簡單了,對於邊界條件,難道讓做題者猜測嗎 手...