zoukankan      html  css  js  c++  java
  • [LeetCode] 9.Palindrome Number

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

    题目意思:判断一个整数是否是回文数

    例如:123211,1221即为回文数,110则不是回文数

    ===================================================================

    思路一:

    现将这个整数反转,然后判断返转后的数是否与原来的是相等,相等则为回文数,反之则不是。

    利用了上一题[LeetCode] 7.Reverse Integer - Swift的算法

    实现代码:

    class Solution {
        func isPalindrome(_ x: Int) -> Bool {
            
            if x <= 0 {
                return  false
            }
            
            var tmp: Int = x
            var str: String = ""
            var reverseX: Int = 0
            
            
            while tmp/10 != 0 {
                str = str.appending("(tmp%10)")
                tmp = tmp/10
            }
            str = str.appending("(tmp)")
            
            reverseX = Int(str)!
            
            if reverseX == x {
                return true
            }
    
            
            return false
        }
    }
    

     ===================================================================

    思路二:(思路一的效率略低,参考了别人的思路)

    整型分为两种情况:

    第一种情况:奇数位,如121,走完while循环后leaveNum=1,newNum=12,根据leaveNum==newNum/10,则返回true,判断得出121是回文数

    第二种情况:偶数位,如1221,走完while循环后leaveNum=12,newNum=12,根据leaveNum==newNum,则返回true,判断得出1221是回文数

    这种方法循环执行的次数是思路一方法的一半,效率自然高!

    class Solution {
        func isPalindrome(_ x: Int) -> Bool {
            if x < 0 || (x != 0 && x % 10 == 0) {
                return false
            }
            
            var leaveNum = x
            var newNum = 0
            
            while leaveNum > newNum {
                newNum = newNum * 10 + leaveNum % 10
                leaveNum = leaveNum / 10
            }
            
            return (newNum == leaveNum || leaveNum == newNum / 10)
        }
    }
    
  • 相关阅读:
    什么是接口测试?
    接口测试浅谈
    软件测试之数据库面试题
    软件测试的流程是什么?
    多用户博客网站开发实战之创建数据库
    利用python脚本统计和删除redis key
    ULR1 B. 【ULR #1】光伏元件
    法拉第未来任命新CFO!贾跃亭激动发声
    人民需要特斯拉,但条件不允许
    什么叫IOCSABS呢
  • 原文地址:https://www.cnblogs.com/china-fanny/p/7737383.html
Copyright © 2011-2022 走看看