알고리즘/알고리즘 이론
이진수 변환 구현하기 {언어: 자바스크립트}
스위태니
2024. 5. 4. 02:02
728x90
구현 1 : 쉬프트 연산자(>>) 사용하기
function toBinaryUsingShift(num) {
let binary = "";
while (num > 0) {
let lastBit = num & 1; // num의 마지막 비트를 가져옵니다.
binary = lastBit + binary; // 결과 문자열에 비트를 추가합니다.
num = num >> 1; // 오른쪽으로 한 비트 쉬프트합니다.
}
return binary || "0";
}
구현 2 : 숫자를 2로 나누기
function toBinaryUsingDivision(num) {
let binary = "";
while (num > 0) {
let remainder = num % 2; // 2로 나눈 나머지를 구합니다.
binary = remainder + binary; // 결과 문자열에 나머지를 추가합니다.
num = Math.floor(num / 2); // num을 2로 나눕니다.
}
return binary || "0";
}
시간복잡도
- 둘 다 O(logN)
느낀점
- 이진수 변환을 내장 함수를 사용하지 않고 하는 것도 알고 있어야 한다.
728x90