[LeetCode] [C++] [007]Reverse Integer(反转整数)
////LeetCode_7_ReverseInteger.cpp//arithmetic////Created by li on 2018/5/24.//Copyright © 2018年 li. All rights reserved.////原题//// Reverse digits of an integer.// Example1: x = 123...
·
//
// LeetCode_7_ReverseInteger.cpp
// arithmetic
//
// Created by li on 2018/5/24.
// Copyright © 2018年 li. All rights reserved.
//
//原题
//
// Reverse digits of an integer.
// Example1: x = 123, return 321
// Example2: x = -123, return -321
//
//题目大意
//
// 输入一个整数对其进行翻转
//
//解题思路
//
// 通过求余数求商法进行操作。
//
//代码实现
#include "LeetCode_7_ReverseInteger.hpp"
int LeetCode_7_ReverseInteger::main(int argc, const char *argv[]) {
int res = LeetCode_7_ReverseInteger().reverse(123);
cout<<"result:"<<res<<"int max :"<<INT_MAX<<endl;
return 0;
}
int LeetCode_7_ReverseInteger::reverse(int x) {
int res =0;
while ( x != 0) {
if(abs(res) > INT_MAX / 10) return 0; //整数溢出返回0
res = res * 10 + x % 10; //本次结果 = 上一次结果进位+小于10的余数
x /= 10; //数据源进位
}
return res;
}
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
已为社区贡献1条内容
所有评论(0)