劍指offer——把字串轉換成整數C++
不難,先記錄第一位是否是+or-,設定flag。然後反向遍歷字串,如果不是合法字元,就return0,如果是,就讓res+=這一位*pow(10,length-i-1),最後一位是個位就×pow(10,0)
class Solution {
public:
int StrToInt(string str) {
//從後往前遍歷到第1位,第0位不要,如果遍歷到非法字元,直接返回0
//用pow(10,lenght-1-i)*當前位即可
int res = 0;
int flag = 1;//1證明是個正數
for(int i = str.length()-1; i >= 0; --i){
if(i == 0 && str[i] == '-'){
flag = 0;
continue;
}
else if(i == 0 && str[i] == '+'){
flag = 1;
continue;
}
if(str[i] - '0' < 0 || str[i] - '0' > 9) return 0;
res += (str[i]-'0')*pow(10,str.length()-i-1);
}
if(flag == 0) res = -res;
return res;
}
};
相關文章
- 力扣 - 劍指 Offer 67. 把字串轉換成整數力扣字串
- 《Leetcode of December》劍指 Offer 67. 把字串轉換成整數LeetCode字串
- 劍指offer(Java版)--將字串轉換為整數Java字串
- JZ-049-把字串轉換成整數字串
- 劍指offer——把陣列排成最小的數C++陣列C++
- 劍指Offer 表示數值的字串字串
- 劍指Offer系列之「表示數值的字串」字串
- 字串轉換整數(atoi)字串
- 【leetcode】劍指 Offer 16. 數值的整數次方LeetCode
- 【劍指offer】【2】字串的空格字串
- 劍指offer--把二叉樹列印成多行(C++)二叉樹C++
- 劍指Offer-34-把陣列排成最小的數陣列
- 轉換成為整數
- 劍指 Offer 38. 字串的排列字串
- python實現字串轉換整數Python字串
- 劍指offer:旋轉陣列的最小數字陣列
- 劍指offer 旋轉陣列的最小數字陣列
- 【劍指offer】2.替換空格
- 劍指offer-替換空格02
- 劍指offer—58_2.左旋轉字串—分析及程式碼(Java)字串Java
- 劍指 Offer 列印從1到最大n位數c++C++
- 力扣 - 劍指 Offer 45. 把陣列排成最小的數力扣陣列
- 劍指Offer-把陣列中的數排成一個最小的數陣列
- String to Integer (atoi) 字串轉換整數 (atoi)字串
- 劍指offer-轉陣列的最小數字-php陣列PHP
- 劍指OFFER
- LeetCode 劍指 Offer 05. 替換空格LeetCode
- 劍指offer——正規表示式匹配C++C++
- [劍指offer] 把二叉樹列印成多行二叉樹
- 【劍指 Offer】11. 旋轉陣列的最小數字陣列
- 劍指 Offer 11. 旋轉陣列的最小數字陣列
- 【劍指offer】7.旋轉陣列的最小數字陣列
- 劍指offer:輸入n個整數,找出其中最小的K個數。
- 【劍指Offer】調整陣列順序使奇數位於偶數前面陣列
- LeetCode|劍指 Offer 49.醜數LeetCode
- 劍指offer第49題 醜數
- 劍指offer——二叉樹的映象C++二叉樹C++
- 劍指offer——二叉樹的深度C++二叉樹C++