Skip to content

Commit adc749a

Browse files
authored
feat: reverse bits
1 parent 0a84ee7 commit adc749a

File tree

1 file changed

+20
-0
lines changed

1 file changed

+20
-0
lines changed

reverse-bits/anniemon.js

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
/**
2+
* 시간 복잡도: 상수(32)번 반복이 일어나므로 O(1)
3+
* 공간 복잡도: 상수(32) 크기의 배열을 생성하므로 O(1)
4+
*/
5+
/**
6+
* @param {number} n - a positive integer
7+
* @return {number} - a positive integer
8+
*/
9+
var reverseBits = function(n) {
10+
let i = 0;
11+
let arr = [];
12+
while(i < 32) {
13+
arr.push(n % 2);
14+
n = Math.floor(n / 2);
15+
i++;
16+
}
17+
const bi = arr.reverse().join('');
18+
const reversedBi = bi.split('').reverse().join('');
19+
return parseInt(reversedBi, 2);
20+
};

0 commit comments

Comments
 (0)