9. 回文数

题目描述

判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。

示例

示例 1:
输入: 121
输出: true

示例 2:
输入: -121
输出: false
解释: 从左向右读, -121 从右向左读, 121- 。因此它不是一个回文数。

示例 3:
输入: 10
输出: false
解释: 从右向左读, 01 。因此它不是一个回文数。

解法

func isPalindrome(x int) bool {
if x < 0 {
return false
}
if x == 0 {
return true
}
str := strconv.Itoa(x)
strLength := len(str)
for index := 0; index < strLength; index++ {
if str[index] != str[strLength-index-1] {
return false
}
}
return true
}

本地测试

package main

import (
"fmt"
"strconv"
)

func main() {
n := 121
fmt.Println(isPalindrome(n), true)
n = -121
fmt.Println(isPalindrome(n), false)
n = 10
fmt.Println(isPalindrome(n), false)
}

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/palindrome-number