首页 > 其他 > 详细

leetcode 9 -- Palindrome Number

时间:2015-05-28 09:35:43      阅读:278      评论:0      收藏:0      [点我收藏+]

Palindrome Number

题目:
Determine whether an integer is a palindrome. Do this without extra space.


题意:
判断一个整数是否是回文的,要求不使用额外的空间


思路:
<1简单起见我用的python,先判断是否为0,或者负数,若不是则转化为字符串,然后利用切片截取两段,反转其中一个比较是否相等即可。
顺便提下切片真的非常好用^_^。
<2.可以不断的求余,然后并对余数*10相加,最后比较即可,比如数字123321,第一次求余12332和1,第二次1233和1*10+2 = 12,第三次为123和12*10+3 = 123。


代码:

class Solution:
    # @param {integer} x
    # @return {boolean}
    def isPalindrome(self, x):
        if x < 0:
            return False
        if x == 0:
            return True
        x = str(x)
        mid = len(x)/2
        if len(x)%2 == 0:
            return x[:mid][::-1] == x[mid:]
        else:
            return x[:mid][::-1] == x[mid+1:]

虽然今天已经做了一道,但是这个比较简单,且我是第一次一次性AC,^_^,就提前发了

leetcode 9 -- Palindrome Number

原文:http://blog.csdn.net/wwh578867817/article/details/46057225

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!