Skip to content

Commit 121d8ce

Browse files
committed
feat: Upload reverse bits(typescript)
1 parent 912fe12 commit 121d8ce

File tree

1 file changed

+16
-0
lines changed

1 file changed

+16
-0
lines changed

reverse-bits/mike2ox.ts

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
/**
2+
* source: https://leetcode.com/problems/reverse-bits/
3+
* 풀이방법: 비트 연산을 이용하여 뒤집기
4+
* 시간복잡도: O(1)
5+
* 공간복잡도: O(1)
6+
*/
7+
function reverseBits(n: number): number {
8+
let result = 0;
9+
const bitSize = 32;
10+
// 32비트를 순회하면서 뒤집기
11+
for (let i = 0; i < bitSize; i++) {
12+
const bit = (n >> i) & 1; // i번째 비트 추출
13+
result = result | (bit << (bitSize - 1 - i)); // 뒤집은 비트를 result에 저장
14+
}
15+
return result >>> 0; // 부호비트를 제거하기 위해 0으로 비트 이동
16+
}

0 commit comments

Comments
 (0)