数字反转问题

Posted hzauxx

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数字反转问题相关的知识,希望对你有一定的参考价值。

数字反转问题(Java实现)

记录面试遇到的一个问题。

 

问题场景:

  输入一串数字,逆序后输出。

 

示例:

  输入:-123,输出:-321

  输入:100, 输出:1

 

 

程序实现:

 

import java.util.Scanner;
public class NumberReversal
public static void main(String[] args)
Scanner scanner=new Scanner(System.in);
int n=scanner.nextInt();
long time1=System.currentTimeMillis();
int result=0;
int tmp=Math.abs(n);
while(tmp>0)
result*=10;
result+=tmp%10;
tmp/=10;

System.out.println(n>=0?result:-result);
long time2=System.currentTimeMillis();
System.out.println(time2-time1);

 

 

测试截图:

技术图片

 

 

可以看到这个算法的效率还是非常高的。

 

 

 

 

吾生也有涯,而知也无涯。

 

以上是关于数字反转问题的主要内容,如果未能解决你的问题,请参考以下文章

仅使用按位运算反转数字

在python中添加反转以前的数字以实现回文

如何在solidity中反转uint的数字?

Bailian4029 数字反转进制(POJ NOI0105-29)

数字反转

(蓝桥杯)试题 算法训练 数字反转