Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
Skip to content

Commit b77bdd6

Browse files
author
Ram swaroop
committed
fix in reverse bits
1 parent ffa2a73 commit b77bdd6

File tree

1 file changed

+7
-11
lines changed

1 file changed

+7
-11
lines changed

src/me/ramswaroop/bits/ReverseBits.java

Lines changed: 7 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -12,25 +12,23 @@
1212
public class ReverseBits {
1313

1414
public static int getNumberByReversingBits(int n) {
15-
System.out.println(Integer.toBinaryString(n));
1615

1716
int m;
1817
// assume 32-bit number
1918
m = 0x55555555; // 1-bit swap
20-
n = ((n & m) << 1) | ((n & ~m) >> 1);
19+
n = ((n & m) << 1) | ((n & ~m) >>> 1);
2120

2221
m = 0x33333333; // 2-bits swap
23-
n = ((n & m) << 2) | ((n & ~m) >> 2);
22+
n = ((n & m) << 2) | ((n & ~m) >>> 2);
2423

2524
m = 0x0f0f0f0f; // 4-bits swap
26-
n = ((n & m) << 4) | ((n & ~m) >> 4);
25+
n = ((n & m) << 4) | ((n & ~m) >>> 4);
2726

2827
m = 0x00ff00ff; // 8-bits swap
29-
n = ((n & m) << 8) | ((n & ~m) >> 8);
28+
n = ((n & m) << 8) | ((n & ~m) >>> 8);
3029

31-
n = (n << 16) | (n >> 16); // 16-bits swap
30+
n = (n << 16) | (n >>> 16); // 16-bits swap
3231

33-
System.out.println(Integer.toBinaryString(n));
3432
return n;
3533
}
3634

@@ -45,7 +43,6 @@ public static int getNumberByReversingBits(int n) {
4543
* @return
4644
*/
4745
public static int getNumberByReversingBits_V1(int n) {
48-
System.out.println(Integer.toBinaryString(n));
4946

5047
int reverseNum = 0, i = 0;
5148
while (n > 0) {
@@ -55,13 +52,12 @@ public static int getNumberByReversingBits_V1(int n) {
5552
n >>= 1;
5653
i++;
5754
}
58-
System.out.println(Integer.toBinaryString(reverseNum));
5955

6056
return reverseNum;
6157
}
6258

6359
public static void main(String a[]) {
64-
System.out.println(getNumberByReversingBits(7));
65-
System.out.println(getNumberByReversingBits_V1(7));
60+
System.out.println(getNumberByReversingBits(79876));
61+
System.out.println(getNumberByReversingBits_V1(79876));
6662
}
6763
}

0 commit comments

Comments
 (0)