题目描述
blablabla
样例
blablabla
算法1
(暴力枚举) $O(n^2)$
blablabla
时间复杂度
参考文献
C++ 代码
class Solution {
public:
int strToInt(string str) {
string s2="";
int len=0;
bool tag=true;
int a=0,result;
for(int i=0;i<str.length();i++){
if(str[i]!=' '&&str[i]=='-'){tag=false;a=i+1;break;}
else if(str[i]=='+'){a=i+1;break;}
}
//if(a!=0)a+=1;
for(int i=a;i<str.length();i++){
if(str[i]>='0'&&str[i]<='9'){
s2+=str[i];len++;
}
else break;
/*
if(str[i]>='0'&&str[i]<='9'&&(i+1==str.length()||(str[i+1]<'0'||str[i+1]>'9'))){
if(len>s2.length()){
s2=s1;len=0;
}
else;
}
*/
}
if(s2.length()==0)return 0;
else if(s2.length()>=10){
if(s2.length()>10)
if(tag == false) return -2147483648;
else return 2147483647;
else{
if(214748364<conINT(s2.substr(0,9))){
if(tag == false) return -2147483648;
else return 2147483647;
}
else if(214748364>=conINT(s2.substr(0,9))){
if(s2[9]<'8'){
if(tag == false) return -conINT(s2);
else return conINT(s2);
}
else if(s2[9]=='8'){
if(tag==false) return -2147483648;
else return 2147483647;
}
else{
if(tag == false) return -2147483648;
else return 2147483647;
}
}
}
}
else {
if(tag == false) return -conINT(s2);
else return conINT(s2);
}
}
int conINT(string str){
int result=0;
for(int i=0;i<str.length();i++){
result=result*10+((int)str[i]-48);
}
return result;
}
};
算法2
(暴力枚举) $O(n^2)$
blablabla
时间复杂度
参考文献
C++ 代码
blablabla