大风车01

归来仍少年

回文数

题目:回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。比如 12321。判断一个整数是否是回文数。

解题思路:

1.如果是数字个数是偶数的话,那么n/2-1和 n/2+1 相等,其余位数的数字也是对应相等;如果是奇数,n/2+1 为中间数,它两边的数字都对应相等。

2.利用双指针,一个从左到右一个从右到左,元素总是相等,遍历的终止条件为双指针下标 i<j,则是回文数;否则不是回文数

int aa=123321
string bb=aa.ToString();

if(aa<0) return false;//负数不是回文 -123321

for(i=0,j=aa.Length-1;i<j;i++,j--) //双指针
{
  if(bb[i]!=bb[j])
  {
      return false;
  }
    
}
return true;

 



关键点:双指针

posted on 2022-10-29 11:11  大风车01  阅读(57)  评论(0编辑  收藏  举报

导航