判断回文整型数

题目来自leetcode, 要求判断一个整型数是否是回文,不使用任何额外空间。

我承认,是“不使用额外空间”这句话让我想到了递归。

一般判断回文字符串是一个一个字符单独比较,但是对于整型数,显然我们有更好的办法。将它从低位到高位颠倒顺序重新排列,如果跟原数一样,那就成了。

bool ispalindrome(int n, int x, int m){
    if(n)
      return ispalindrome(n/10, 10*x + n%10, m);
    else
      return x == m;
}
bool palindromeint(int n){
	return ispalindrome(n, 0, n);
}

怎么样,很精炼吧?而且真的没有额外空间,连一个变量都没有:)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值