很久没写博客了,今天水一篇吧..
今天写了一个关于回文数的题目,大概写一下这次的思路,这次是先将整数转字符串,然后将字符串反转再比较与原字符串是否相等. 代码如下:
bool isOk(int n) {
stringstream ss;
ss<<n;
string s = ss.str();
string res = s;
reverse(s.begin(), s.end());
return s==res;
}
用到了stringstream,需要包含头文件 sstring.貌似C++11中有一个to_string函数,更方便,但是devcpp中用不了,所以也就没管了.
刚刚又想到一种更简单的方法,既然字符串可反转,整数不也可以吗????,而且这样效率还高得多了!!!!
如下代码:
bool isOk1(int n) {
int res = 0;
int tmp = n;
while(tmp!=0){
res = res * 10 + tmp%10;
tmp/=10;
}
return res==n;
}