• [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)
        }
    }
    
  • 相关阅读:
    bootstrap treevie只展开一个节点,关闭其他节点
    Java后端校验-使用hibernate-validator校验JavaBean
    js生成Excel文件
    Databus&canal对比
    KVM安装配置笔记
    机器学习之数学基础一导数
    机器学习-线性回归
    机器学习之数学基础一统计
    Leader与Boss,技术leader与管理者
    php递归获取无限分类菜单
  • 原文地址:https://www.cnblogs.com/china-fanny/p/7737383.html
Copyright © 2020-2023  润新知