leetcode 5.ReverseNum 数字反转

    xiaoxiao2023-09-27  168

     题目(英文版)

    Reverse digits of an integer.

    Example1: x = 123, return 321Example2: x = -123, return -321


     题目(中文版)

    给定一个 32 位有符号整数,将整数中的数字进行反转。


    解题思路:


     

     代码解析(代码有详细的注释,看不懂的可以在下方留言,会及时回复的):

    public class ReverseNum { public int reverse(int num){ //定义一个中间变量,用来存储每一循环后的反转值 //比如1234 //第一次循环rev为4 //第二次循环rev为43 //第三次循环rev为432 //第四次循环rev为4321 int rev = 0; //只要输入要反转的数不为0 //比如1234 //第一次1234 //第二次循环123 //第三次循环12 //第四次循环1 while(num!=0){ //定义一个中间变量,用来存储每一循环后的反转值 //比如1234 //第一次循环rev为4 //第二次循环rev为43 //第三次循环rev为432 //第四次循环rev为4321// int newRev = rev*10+num; //判断是否超出int所能表示的范围 if(((newRev-num)/10)!=rev)return 0; //将值赋给rev,以便下一次循环 rev = newRev; num/=10; } return rev; } }
    最新回复(0)