LeetCode Reverse Integer反転整数
2882 ワード
1 class Solution {
2 public:
3 int reverse(int x) {
4 int e,s,num,k=0;
5 num=x;
6 e=0;
7 if(x<0)
8 num=-1*x;
9 while( num!=0 ){
10 s=num%10;
11 e=e*10+s;
12 num=num/10;
13 k++;
14 }
15 if(x<0)
16 return -e;
17 else
18 return e;
19 }
20 };
タイトル:
Example1: x = 123, return 321Example2: x = -123, return -321
1つの整数のビットを取り外し、別の整数の最上位に配置します.
さらに10ビットを取り外し、別の整数のこの高位に置きます.
.....
xの最高位が別の整数にビットとして取り外されるまで.
注意:
1.正負は元と同じなので、抽出しなければなりません.
考え方:
1.直接分解し、除号÷と余剰%で解決する.