乘风破浪:LeetCode真题_007_Reverse Integer
生活随笔
收集整理的这篇文章主要介绍了
乘风破浪:LeetCode真题_007_Reverse Integer
小编觉得挺不错的,现在分享给大家,帮大家做个参考.
乘风破浪:LeetCode真题_007_Reverse Integer
一、前言
这是一个比较简单的问题了,将整数翻转,主要考察了取整和取余,以及灵活地使用long型变量防止越界的问题。
二、Reverse Integer
2.1 问题理解
2.2 问题分析与解决
可以看到通过简单地取整和取余运算就能得到答案,但是需要注意越界问题,使用long在Java中8个字节的特性来完成越界检查和处理。
我们的算法:
public class Solution {/*** <pre>* 原题* Reverse digits of an integer.* Example1: x = 123, return 321* Example2: x = -123, return -321** 题目大意* 输入一个整数对其进行翻转** 解题思路* 通过求余数求商法进行操作。*/public int reverse(int x) {long tmp = x;// 防止结果溢出long result = 0;while (tmp != 0) {result = result * 10 + tmp % 10;tmp = tmp / 10;}// 溢出判断if (result < Integer.MIN_VALUE || result > Integer.MAX_VALUE) {result = 0;}return (int) result;} }三、总结
细节决定成败,对于一些简单的问题,我们也不能掉以轻心,只有沉下心来认真地分析,多做题,多思考,多练习才能游刃有余。
转载于:https://www.cnblogs.com/zyrblog/p/10209617.html
总结
以上是生活随笔为你收集整理的乘风破浪:LeetCode真题_007_Reverse Integer的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: Cocoapods ----- pod
- 下一篇: 集合总结