LeetCode(8) String To Integer(atoi)
2015-01-08 12:52
274 查看
题目如下:
String to Integer (atoi)
Implement atoi to convert a string to an integer.
Hint: Carefully consider all possible input cases. If you want a challenge, please do not see below and ask yourself what are the possible input cases.
Notes: It is intended for this problem to be specified vaguely (ie, no given input specs). You are responsible to gather all the input requirements up front.
分析如下:
处理各种invalid input要仔细,详见下面的代码。
我的代码:
String to Integer (atoi)
Implement atoi to convert a string to an integer.
Hint: Carefully consider all possible input cases. If you want a challenge, please do not see below and ask yourself what are the possible input cases.
Notes: It is intended for this problem to be specified vaguely (ie, no given input specs). You are responsible to gather all the input requirements up front.
分析如下:
处理各种invalid input要仔细,详见下面的代码。
我的代码:
//64ms class Solution { public: int atoi(const char *str) { //space //validate 0~9 //+- //0012 vs 1002 //INTMAX int result = 0; bool isNegative = false; while(*str == ' ') str++; if(*str == '+') str++; else if(*str == '-') { isNegative = true; str++; } while(*str != '\0') { if (*str - '0' == 0 && result == 0) { str++; continue; } if (*str - '0' < 0 || *str - '9' > 0) return isNegative? -result: result; if (result > INT_MAX / 10) return isNegative? INT_MIN : INT_MAX; result *= 10; if ((*str - '0') > (INT_MAX - result)) return isNegative? INT_MIN : INT_MAX; result = result + *str - '0'; str++; } return isNegative? -result : result; } };
相关文章推荐
- leetcode 54: String to Integer (atoi)
- Leetcode : String to Integer (atoi)
- LeetCode-String to Integer (atoi)
- Leetcode: String to Integer (atoi)
- leetcode -- String to Integer (atoi)
- leetcode 54: String to Integer (atoi)
- [leetcode]String to Integer (atoi)
- LeetCode-String to Integer (atoi)
- [leetcode刷题系列]String to Integer (atoi)
- LeetCode:String to Integer (atoi)
- [leetcode] String to Integer (atoi)
- LeetCode - String to Integer (atoi)
- leetcode String to Integer (atoi)Dec 27 '117626 / 35090
- [LeetCode] String to Integer (atoi) 解题报告
- LeetCode 8 - String to Integer (atoi)
- 【leetcode】String to Integer (atoi)
- [LeetCode]String to Integer (atoi)
- LeetCode :String to Integer (atoi)
- LeetCode - String to Integer (atoi)
- LeetCode: String to Integer (atoi)