Skip to content

Commit 35ffaec

Browse files
committed
add: solve #234 Reverse Bits with ts
1 parent 40b1c97 commit 35ffaec

File tree

1 file changed

+22
-0
lines changed

1 file changed

+22
-0
lines changed

โ€Žreverse-bits/Yjason-K.ts

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
/**
2+
* ์ฃผ์–ด์ง„ ์ •์ˆ˜๋ฅผ 32๋น„ํŠธ๋กœ ๋ณ€ํ™˜ํ•˜๊ณ  ๋ฐ˜์ „์‹œ์ผœ ๊ทธ๋•Œ์˜ ์ •์ˆ˜๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋Š” ๋ฌธ์ œ.
3+
*
4+
* @param {number} n - ์ •์ˆ˜ (32๋น„ํŠธ))
5+
* @returns {number} - 2์ง„์ˆ˜ ๋ณ€ํ™˜ ๋ฐ ๋ฐ˜์ „ํ•˜์—ฌ ์ •์ˆ˜ ๋ณ€ํ™˜.
6+
*
7+
* ๋‚ด์žฅ ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ 32๋น„ํŠธ 2์ง„์ˆ˜ ๋ณ€ํ™˜ ํ›„, reverseํ•˜์—ฌ ๋‹ค์‹œ ์ •์ˆ˜๋กœ ๋ณ€ํ™˜.
8+
*
9+
* ์‹œ๊ฐ„ ๋ณต์žก๋„: O(32)
10+
* - 32๋น„ํŠธ ์ •์ˆ˜์˜ ๋น„ํŠธ๋ฅผ ์ฒ˜๋ฆฌํ•˜๋ฏ€๋กœ ๊ณ ์ •๋œ ์ƒ์ˆ˜ ์‹œ๊ฐ„.
11+
*
12+
* ๊ณต๊ฐ„ ๋ณต์žก๋„: O(32)
13+
* - 2์ง„์ˆ˜ ๋ฌธ์ž์—ด์„ ์ƒ์„ฑํ•˜๊ณ  ๋ฐ˜์ „๋œ ๋ฌธ์ž์—ด์„ ์ €์žฅํ•˜๋ฏ€๋กœ ๊ณ ์ •๋œ ํฌ๊ธฐ์˜ ์ถ”๊ฐ€ ๋ฉ”๋ชจ๋ฆฌ๊ฐ€ ํ•„์š”.
14+
*/
15+
function reverseBits(n: number): number {
16+
// ์ˆซ์ž๋ฅผ 32๋น„ํŠธ 2์ง„์ˆ˜ ๋ฌธ์ž์—ด๋กœ ๋ณ€ํ™˜ (์•ž์— 0 ์ฑ„์šฐ๊ธฐ)
17+
const binaryStr = n.toString(2).padStart(32, '0');
18+
// 2์ง„์ˆ˜ ๋ฌธ์ž์—ด์„ ๋’ค์ง‘๊ธฐ
19+
const reversedBinaryStr = binaryStr.split('').reverse().join('');
20+
// ๋’ค์ง‘ํžŒ 2์ง„์ˆ˜ ๋ฌธ์ž์—ด์„ ๋‹ค์‹œ ์ˆซ์ž๋กœ ๋ณ€ํ™˜
21+
return parseInt(reversedBinaryStr, 2);
22+
};

0 commit comments

Comments
ย (0)