0
点赞
收藏
分享

微信扫一扫

刷 LeetCode 从零开始学 GoLang(3):9. Palindrome Number


题目描述

Determine whether an integer is a palindrome. An integer is a palindrome when it reads the same backward as forward.

Example 1:

Input: 121
Output: true

Example 2:

Input: -121
Output: false
Explanation: From left to right, it reads -121.
From right to left, it becomes 121-.
Therefore it is not a palindrome.

Example 3:

Input: 10
Output: false
Explanation: Reads 01 from right to left. Therefore it is not a palindrome.

Follow up:
Coud you solve it without converting the integer to a string?

GoLang 语法: 声明变量

  1. 一般形式

var name type = expression

(1) ​​type​​​ 和 ​​= expression​​ 可以省略其中一个,但是不能都被省略,否则会报错(syntax error: unexpected newline, expecting type​)

  1. Short Variable Declaration

name := expression

(1)用于在函数内声明和初始化局部变量
(2)该语句也可以用于给已声明的变量赋值,但前提是该语句至少需要声明变量
(3)只有在同一定义域内声明过的变量,该语句才会表现为赋值操作。否则,即使是在外层定义域声明的变量,该语句也会重新声明和初始化一个新的同名变量

AC 代码

func isPalindrome(x int) bool {
if x < 0 {
return false
}

// reverseNum := 0
// var reverseNum = 0
// var reverseNum int
var reverseNum int = 0
var temp int = x

for temp != 0 {
reverseNum = reverseNum * 10 + temp % 10
temp /= 10
}

return (reverseNum == x)
}


举报

相关推荐

0 条评论