《剑指offer》把字符串转为整数
生活随笔
收集整理的這篇文章主要介紹了
《剑指offer》把字符串转为整数
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
題目:將一個(gè)字符串轉(zhuǎn)換成一個(gè)整數(shù),要求不能使用字符串轉(zhuǎn)換整數(shù)的庫(kù)函數(shù)。 數(shù)值為0或者字符串不是一個(gè)合法的數(shù)值則返回0
輸入描述:
輸入一個(gè)字符串,包括數(shù)字字母符號(hào),可以為空
輸出描述:
如果是合法的數(shù)值表達(dá)則返回該數(shù)字,否則返回0
示例1
輸入:
+2147483647
1a33
輸出:
2147483647
0
解析:如果你用庫(kù)函數(shù)做,相信這題沒(méi)神馬好做得了。那么我們?nèi)绾巫约喝?shí)現(xiàn)Integer.parseInt()函數(shù)呢?
我們可以從后向前看2147483647是怎么算來(lái)的。首先字符串的最后一位是7,7*10的0次就等于它本身了,然后最后兩位呢?47=4*10的2次+7*10的一次…如此往復(fù)計(jì)算到2147483647,規(guī)律相比大家知道了。即:從最后一位開(kāi)始看,每次需要乘以10的n次冪(n從0到n-1)。注意:前面如果字符串前面有負(fù)號(hào)的要加上-號(hào),如何加?正數(shù)乘以-1即可。詳情請(qǐng)看代碼
總結(jié)
以上是生活随笔為你收集整理的《剑指offer》把字符串转为整数的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 《剑指offer》不用加减乘除做加法
- 下一篇: 《剑指offer》数组中重复的数字