본문 바로가기

코딩테스트(알고리즘)/알고리즘 구현7

2진법 16진법 변환 구현 2진법 16진법 변환 구현 Javascript let bin = "11111010"; let hex = "FA"; function binTohex(num) { num = num.split(""); let [bin_first, bin_second] = [num.slice(0, 4), num.slice(4)]; let ret1 = 0; let ret2 = 0; for (let i = 0; i < 4; i++) { if (i === 0) { ret1 += +bin_first[i] * 8; ret2 += +bin_second[i] * 8; } else if (i === 1) { ret1 += +bin_first[i] * 4; ret2 += +bin_second[i] * 4; } else if (i === 2) .. 2022. 7. 2.
[알고리즘 구현] 소수 찾기, 에라토스테네스의 체 (Javascript) 소수 찾기, 에라토스테네스의 체 알고리즘 Javascript function isPrime(num) { if (num === 2) return true; for (let i = 2; i < Math.floor(Math.sqrt(num)); i++) { if (num % i === 0) return false; } return true; } function Eratos(num) { let arr = new Array(num + 1).fill(1); for (let i = 2; i < Math.floor(Math.sqrt(num)); i++) { if (arr[i] === 0) continue; for (let j = i * i; j 2022. 6. 25.
[알고리즘 구현] 이진탐색 binarySearch (Javascript) 이진 탐색를 공부하고 구현 Javascript let arr = [7, 5, 9, 0, 3, 1, 6, 2, 4, 8, 1]; let len = arr.length; function binarySearch(arr, target, start, end) { arr = arr.sort((a, b) => a - b); while (start target) end = mid - 1; //찾는 값이 중간점의 값보다 크면 오른쪽확인 확인 else start = mid + 1; console.log(mid); } return -1; } let idx = binarySearch(arr, 9, 0, len - 1); if (idx === -1) console.log("failed"); else console.log(arr.. 2022. 6. 25.
[알고리즘 구현] 정렬 sort (Javascript) 정렬에 대해 공부하고 직접 구현을 통해 작동 원리를 이해했다. 1. 선택정렬 2. 삽입정렬 3. 퀵정렬 4. 계수정렬 Javascript let arr = [7, 5, 9, 0, 3, 1, 6, 2, 4, 8, 1]; let len = arr.length; function selectionSort(arr) { for (let i = 0; i arr[j]) { min_index = j; } } //구조 분해 할당 [arr[i], arr[min_index]] = [arr[min_index], arr[i]]; } console.log(arr); } f.. 2022. 6. 25.