原题
给你一个整数 x ,如果 x 是一个回文整数,返回 true ;否则,返回 false 。
回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。例如,121 是回文,而 123 不是。
示例 1:
输入:x = 121
输出:true
示例 2:
输入:x = -121
输出:false
解释:从左向右读, 为 -121 。 从右向左读, 为 121- 。因此它不是一个回文数。
示例 3:
输入:x = 10
输出:false
解释:从右向左读, 为 01 。因此它不是一个回文数。
示例 4:
输入:x = -101
输出:false
提示:
-231 <= x <= 231 - 1
来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/palindrome-number
go语言解题
思路:
将数字各个位拆分转化为切片,对切片进行比较
切片 slice
切片是引用类型,类似于 C++ 中的 list 。内部维护一个数组,当追加元素超出切片容量时,切片自动扩容。(跟 list 是一样的机制。)
切片的声明
var arr []int
切片的使用
//方法一:
var arr1 [5]int = [5]int{
1, 2, 3, 4, 5}
slice1 := arr1[1: 3] //这里的使用跟 Python 很像
//方法二:
var slice2 []int = make([]

本文主要介绍了如何使用Go语言解决判断回文数的问题。首先阐述了原题要求,即判断一个整数是否为回文数。接着,讨论了解题思路,通过将数字拆分为切片并进行比较。文章详细讲解了Go语言中的切片、数组以及它们之间的区别,并给出了具体的代码实现。
最低0.47元/天 解锁文章
1万+

被折叠的 条评论
为什么被折叠?



