题解 | #把字符串转换成整数(atoi)#
把字符串转换成整数(atoi)
https://www.nowcoder.com/practice/d11471c3bf2d40f38b66bb12785df47f
class Solution {
public:
/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
*
*
* @param s string字符串
* @return int整型
*/
int StrToInt(string s) {
int idx = 0;
int len = s.length();
long long res = 0;
bool sign = true;
while (idx < len && s[idx] == ' ') {
++idx;
}
if (idx == len) {
return static_cast<int>(res);
}
if (s[idx] == '+' || s[idx] == '-') {
sign = s[idx] == '+';
++idx;
}
while (isdigit(s[idx])) {
res = res * 10 + (s[idx] - '0');
if (sign && (res >= INT_MAX)) {
return INT_MAX;
} else if (!sign && (res >= static_cast<long long>(INT_MAX) + 1)) {
return INT_MIN;
}
++idx;
}
return sign ? static_cast<int>(res): static_cast<int>(-res);
}
};
思路:模拟。
正常模拟即可。
小天才公司福利 1154人发布
查看15道真题和解析