Gau*_*tam 3 java reverse numbers bit-manipulation
我试图找到一种方法来扭转一些不
我目前正在这样做
public static int getReverse(int num){
int revnum =0;
for( int i = Integer.toString(num).length() - 1 ; num>0 ; i-- ){
revnum += num % 10 * Math.pow( 10 , i );
num /= 10;
}
return revnum;
}
Run Code Online (Sandbox Code Playgroud)
但我想实现上述3个条件.
我正在寻找一种方法,可能使用位智能移位运算符或其他一些按位运算.
可能吗 ?如果是这样的话?
PS:如果给出1234作为输入它应该返回4321.我将只反转整数和长整数
怎么样:
int revnum = 0;
while (num != 0) {
revnum = revnum * 10 + (num % 10);
num /= 10;
}
return revnum;
Run Code Online (Sandbox Code Playgroud)
代码期望非负输入.
这对你来说可能或不重要,但值得注意的是,getReverse(getReverse(x))
它不一定相等,x
因为它不会保留尾随零.
归档时间: |
|
查看次数: |
2890 次 |
最近记录: |