목록2023/11/20 (1)
기술 블로그
2제곱수 확인
코테중 제곱수를 확인하는 문제가 있어 아래와 같이 구현했다. parseInt(parseInt(n).toString(2).split('').reverse().join(''))===1 2의 제곱수 특성을 활용해 2진수 문자열로 변환 후 리버스 후 1과 같은지 확인했다. 다른 아래와 같은 방법도 있다. 1.비트연산 위의 이진수를 활용한 개념와 유사하지만 더 명료하게 비트연산을 활용한다. function isSquare(n) { return n > 0 && (n & (n - 1)) === 0; } 만약 n이 8이라면 8 & 7의 and연산을 수행한다. 즉 1000과 0111의 and == 0000이므로 2의 제곱수가 맞다 만약 9일경우 1001 and 1000 = 1000 != 0이므로 2의 제곱수가 아니다. ..
프론트엔드/Javascript
2023. 11. 20. 16:01