一分彩APP官方网站下载
热点资讯
你的位置:一分彩APP官方网站下载 > 一分彩app > 一分彩app 2026-05-01: 整数的镜像距离。用go话语, 给定一个整数 n, 请忖度打算
一分彩app 2026-05-01: 整数的镜像距离。用go话语, 给定一个整数 n, 请忖度打算
发布日期:2026-05-03 00:30 点击次数:198

2026-05-01:整数的镜像距离。用go话语,给定一个整数 n,请忖度打算它与其数字倒序后的数之间的差的都备值。
其中,倒序后的数是把 n 的每一位数字反过来得到的新整数。
请复返这个都备值收尾。
1
输入: n = 25。
输出: 27。
主见:
reverse(25) = 52。
因此,谜底为 abs(25 - 52) = 27。
题目来独力扣3783。
一、分步详备扩充过程
第一步:圭臬进口启动
圭臬从 main 函数入手运行,这是Go话语圭臬的扩充起先。
1. 界说变量 n,并赋值为题目给定的输入值 25。
2. 调用核神思算函数 mirrorDistance(25),把 25 看成参数传入,入手忖度打算镜像距离。
第二步:扩充 mirrorDistance 函数(忖度打算镜像距离)
这个函数的作用是:求原数和回转数的差的都备值,扩充才智:
1. 接受传入的参数:原数 n = 25。
2. 调用 reverse 函数,传入 25,忖度打算数字回转后的收尾,恭候函数复返回转值。
3. 拿到回转收尾后,ag真人app官方网站入口忖度打算:原数 - 回转数。
4. 判断忖度打算收尾是否小于0:
• 如若小于0,取它的违反数(也即是都备值);
• 如若大于等于0,径直复返收尾。
5. 将最终的都备值复返给 main 函数。
第三步:扩充 reverse 函数(数字回转中枢)
这个函数的作用是:把整数的每一位数字倒序陈列,生成新整数,以输入 25 为例,才智:
1. 启动化一个收尾变量 res,赋值为 0,用来存储回转后的数字。
2. 插足轮回:轮回要求是刻下数字大于 0,一分彩app只特殊字没解决完就一直轮回。
• 第一次轮回(刻下数字=25):
取数字的临了一位:25 对 10 取余,得到 5;
拼接回转数字:res = 0*10 + 5,res 变为 5;
去掉临了一位:25 除以 10(取整数),数字变为 2。
• 第二次轮回(刻下数字=2):
取临了一位:2 对 10 取余,得到 2;
拼接回转数字:res = 5*10 + 2,res 变为 52;
去掉临了一位:2 除以 10,数字变为 0。
3. 轮回实现(数字变为0,不得志轮回要求)。
4. 将最终的回转收尾 52 复返给 mirrorDistance 函数。
第四步:回到 mirrorDistance 函数完成忖度打算
1. 忖度打算差值:原数 25 - 回转数 52 = -27;
2. 判断差值:-27 小于 0,因此取它的违反数 27;
3. 将收尾 27 复返给 main 函数。
第五步:main 函数输出收尾
1. 接受 mirrorDistance 函数复返的收尾 27;
2. 打印输出收尾,最终范围台露馅:27。
二、时刻复杂度 & 特殊空间复杂度分析
1. 总时刻复杂度
时刻复杂度取决于数字回转函数 reverse 的轮回次数:
• 轮回扩充的次数 = 整数 n 的数字位数(比如 25 是2位,轮回2次;1234是4位,轮回4次)。
• 假定整数 n 的位数为 k,时刻复杂度为 O(k)。
• 题目罢休 n ≤ 1000000000,最大位数是10位,轮回最多扩充10次,属于常数级时刻复杂度。
2. 总数外空间复杂度
圭臬运行过程中:
• 只创建了固定数目的变量(res、diff、n等);
• 莫得使用数组、切片、map等动态扩容的数据结构;
• 无论输入数字多大,占用的特殊内存空间都是固定不变的。
因此总数外空间复杂度为:O(1)(常数级空间复杂度)。
回归
1. 齐全过程:启动圭臬→传入数值→回转数字→忖度打算差值→取都备值→输出收尾;
2. 时刻复杂度:O(k)(k为数字的位数);
3. 特殊空间复杂度:O(1)。
Go齐全代码如下:
package main
import (
"fmt"
)
func reverse(n int)int {
res := 0
for n > 0 {
res = res*10 + n
n /= 10
}
return res
}
func mirrorDistance(n int)int {
diff := n - reverse(n)
if diff
return -diff
}
return diff
}
func main {
n := 25
result := mirrorDistance(n)
fmt.Println(result)
}

Python齐全代码如下:
# -*-coding:utf-8-*-
def reverse(n: int) -> int:
res = 0
while n > 0:
res = res * 10 + n % 10
n //= 10
return res
def mirror_distance(n: int) -> int:
diff = n - reverse(n)
return -diff if diff
def main:
n = 25
result = mirror_distance(n)
print(result)
if __name__ == "__main__":
main

C++齐全代码如下:
#include
using namespace std;
int reverse(int n) {
int res = 0;
while (n > 0) {
res = res * 10 + n % 10;
n /= 10;
}
return res;
}
int mirrorDistance(int n) {
int diff = n - reverse(n);
if (diff
return -diff;
}
return diff;
}
int main {
int n = 25;
int result = mirrorDistance(n);
cout
return0;
}

咱们坚信东谈主工智能为庸俗东谈主提供了一种“增强器用”,并用功于共享全主张的AI学问。在这里,您不错找到最新的AI科普著作、器用评测、培植后果的隐私以及行业知悉。
接待慈祥“福大大架构师逐日一题”一分彩app,发音书可获取口试而已,让AI助力您的异日发展。
比赛下注app官方网站上一篇:一分彩app下载 真贵2026年还在讲求作念MMORPG的东说念主
下一篇:没有了

备案号: