zoukankan      html  css  js  c++  java
  • LeetCode No.9 Palindrome Number 20170410

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

    题目大意:输入一个整数,判断其是否为回文数。不能使用额外空间。

    解题思路:由于不能使用额外空间,所以不能把整数变成字符串。由于回文数是正着反着都是一样的,所以可以先把一个数倒过来,再看看它是否跟原数相等。注意几点,一个是倒过来之后是否会溢出,第二是小于0的数返回false,第三是个位数都是回文数。

    第一步,判断是否小于0,第二步,判断是否个位数,第三步,将原来的数调转顺序,判断是否溢出。第四步,判断调转过来后跟原来的数是否相等。

    class Solution(object):
      def isPalindrome(self, x):
      """
      :type x: int
      :rtype: bool
      """
      xrev = 0
      if (x < 0):
        return False
      elif (x <=9) and (x >= 0):
        return True
      else:
        y = x
      while y > 0:
        xrev = xrev * 10 + y % 10
        y = y / 10
      if x > 2147483647:
        return False
      if xrev == x:
        return True
      return False

  • 相关阅读:
    ubuntu16.04左边栏图标效果设置
    VMware虚拟机 Ubuntu 16.04 安装 VMware Tools
    微信换取openid的值
    thinkphp关于T方法
    Think关于循环的事
    base64格式转换为图片
    Think视图模型格式
    thinkphp里多表事务
    ThinkPHP数据库驱动之mysql事物回滚
    webhook是啥?
  • 原文地址:https://www.cnblogs.com/fangdai/p/6690180.html
Copyright © 2011-2022 走看看