Leetcode-Easy-9 Palindrome Number(python)

题目
image.png
思路

判断一个给定的数字是否是回文数字。
需要注意的是,不仅奇数会出现回文数字,偶数也可以,2442,2222都是回文数字(将数字倒序排列数值相同)
解决办法:将数字放入一组列表,从首尾两侧逐步匹配,相遇前都能匹配上就是回文数字,未相遇匹配失败则不是。
因为是首尾同步走向中点,所以
时间复杂度:O(2/n) =O(n)

代码实现
    def palindrome(self,num):
        num = list(str(num))
        mid = len(num)//2
        forward = 0
        backward = len(num)-1
        while mid>0:
            if num[forward] == num[backward]:
                mid = mid-1
                forward = forward +1
                backward = backward -1
            else:
                return False
        return True
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容