LintCode37.反转一个3位整数

1.题目

反转一个只有3位数的整数。

2.思路及代码

1.直接对整数取余

class Solution {
public:
    /**
     * @param number: A 3-digit number.
     * @return: Reversed number.
     */
    int reverseInteger(int number) {
        int x = number;
        int rev = 0;
        while (x != 0) {
            int pop = x % 10;
            x /= 10;
            rev = rev * 10 + pop;
        }
        return rev;
    }
};
class Solution:
    """
    @param number: A 3-digit number.
    @return: Reversed number.
    """
    def reverseInteger(self, number):
        rev = 0 
        while(number!=0):
            pop = number % 10
            number //= 10
            rev = rev * 10 + pop
        return rev

c++中“/”除完直接向下取整,python中“/”得到小数,“//”除完取整

2.将整数转换成字符串处理

class Solution:
    """
    @param number: A 3-digit number.
    @return: Reversed number.
    """
    def reverseInteger(self, number):
        temp = str(number)
        str1 = temp[::-1]
        number = int(str1)
        return number

3.复杂情况可以考虑栈的思想,可是本题使用如下方法显得麻烦

def reverseInteger(self, number):
	number=str(number)#模拟入栈
        l=list(number)
        result=""
        while len(l)>0:
            result+=l.pop()#模拟出栈
        return int(result)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

七小琦

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值