回文数
题目:回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。比如 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;
关键点:双指针