简单swift
判断一个整数是不是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是同样的整数。bash
1:
输入: 121
输出: true
复制代码
2:
输入: -121
输出: false
解释: 从左向右读, 为 -121 。 从右向左读, 为 121- 。所以它不是一个回文数。
复制代码
3:
输入: 10
输出: false
解释: 从右向左读, 为 01 。所以它不是一个回文数。
复制代码
来源:力扣(LeetCode) 连接:leetcode-cn.com/problems/pa… 著做权归领扣网络全部。商业转载请联系官方受权,非商业转载请注明出处。网络
swiftui
又到回文数了,回文数就是翻过来倒过去都同样。很明显负数不是,先 pass 掉。而后判断正数,这里我用到了一个办法,我去构造两个数字,比较回文数的左右部分是否相等。left
为数字的左半部分,right
为该数字的右部分的倒序。本题比较简单,就是求10的余数等等相关操做。一样须要注意原数字的长度为奇数仍是偶数。spa
代码以下:code
class Solution {
func isPalindrome(_ x: Int) -> Bool {
if x < 0 {
return false
}
var left = x, right = 0, index = 0
let numberLength = String(x).count
while index < numberLength / 2 {
let end = left % 10
right = right * 10 + end
left /= 10
index += 1
}
if numberLength % 2 != 0 {
left /= 10
}
if left == right {
return true
} else {
return false
}
}
}
复制代码
没啥可总结的。leetcode