[面试常问总结] 8. 反转整数(整数转成string后反转字符串)
给你一个 32 位的有符号整数 x ,返回将 x 中的数字部分反转后的结果。
如果反转后整数超过 32 位的有符号整数的范围 [−231, 231 − 1] ,就返回 0。
假设环境不允许存储 64 位整数(有符号或无符号)。
示例 1:
输入:x = 123
输出:321
示例 2:
输入:x = -123
输出:-321
示例 3:
输入:x = 120
输出:21
示例 4:
输入:x = 0
输出:0
提示:
-231 <= x <= 231 - 1
思路:
把整数转成string后反转字符串,注意处理负数和int溢出
go语言实现代码
//反转整数 func ReverseInt(x int) int { //int转成string newstr := strconv.Itoa(x) str := []rune(newstr) right := len(str) - 1 left := 0 //利用左右指针法,反转 for left < right { if string(str[left]) == "-" { left++ } str[left], str[right] = str[right], str[left] left++ right-- } //string转成int x, _ = strconv.Atoi(string(str)) //超出int范围的返回0 if 2147483647 < x || x < (-2147483648) { return 0 } return x }
十年开发经验程序员,离职全心创业中,历时三年开发出的产品《唯一客服系统》
一款基于Golang+Vue开发的在线客服系统,软件著作权编号:2021SR1462600。一套可私有化部署的网站在线客服系统,编译后的二进制文件可直接使用无需搭开发环境,下载zip解压即可,仅依赖MySQL数据库,是一个开箱即用的全渠道在线客服系统,致力于帮助广大开发者/公司快速部署整合私有化客服功能。
开源地址:唯一客服(开源学习版)
官网地址:唯一客服官网
浙公网安备 33010602011771号