剑指offer 算法 (综合)
生活随笔
收集整理的這篇文章主要介紹了
剑指offer 算法 (综合)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
題目描述
將一個字符串轉換成一個整數,要求不能使用字符串轉換整數的庫函數。
解析:現在才發現,原來字符串轉數字特蛋疼,很多細節,以前從來就沒考慮過,魯棒性啊!!!?
?首先,得定義個標志位LegitimateInput,表示串str是否為合法輸入,初始化為1:合法輸入。開始判斷啦~~~若str空串,直接LegitimateInput置0,return 0退出;不是空串,那么,開始分析每個字符。定義標志minus表示是否為負數,初始化為-1。讀首個字符,若為‘+’或者‘-’,minus置位,1:正,0:負,下標位pos+1;之后,開始逐個讀字符計算數字,i從pos開始讀至串尾,一旦出現非‘0’~‘9’之間的字符,LegitimateInput置0,sum置0,并退出循環(可以直接return 0);否則繼續循環,每次計算一遍,還有判斷數字是否上溢或下溢,并做處理。循環結束,若是正確合理輸入,給LegitimateInput置1,并且若minus為-1,sum結果記得取反哦
反正,一切細心細心再細心,要考慮全部情況
總結
以上是生活随笔為你收集整理的剑指offer 算法 (综合)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 用位运算实现四则运算之加减乘除
- 下一篇: 格雷码实现