forked from DaleStudy/leetcode-study
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathlimlimjo.js
More file actions
29 lines (24 loc) ยท 722 Bytes
/
limlimjo.js
File metadata and controls
29 lines (24 loc) ยท 722 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
/**
* @param {number} n - a positive integer
* @return {number} - a positive integer
*/
var reverseBits = function (n) {
// ๋ฌธ์์ด๋ก ๋ณํ
let nString = n.toString(2).padStart(32, "0");
//console.log(nString);
// ์คํ ์์ฑ (์คํ์ ๋์ค์ ๋ค์ด์จ๊ฒ ๋จผ์ ๋๊ฐ๋ฏ๋ก)
let stack = [];
// nString ์คํ์ ๋ฃ๊ธฐ
for (let i = 0; i < nString.length; i++) {
stack.push(nString[i]);
}
// popํ์ฌ ๋ค์งํ ๋ฌธ์์ด ๋ง๋ค๊ธฐ
let reverseNString = "";
for (let i = 0; i < nString.length; i++) {
reverseNString += stack.pop();
}
// ๋ค์งํ ๋ฌธ์์ด์ ์ ์๋ก ๋ณํ
return parseInt(reverseNString, 2);
};
// ์๊ฐ ๋ณต์ก๋: O(1)
// ๊ณต๊ฐ ๋ณต์ก๋: O(1)