이진탐색

문제https://school.programmers.co.kr/learn/courses/30/lessons/72412 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr  풀이문제를 풀이할 때 Map 객체를 이용해 사람들의 입력 데이터를 key로, 점수를 value로 Map객체에 저장했다. 물론 같은 조건에 다른 점수를 갖는 사람들이 있을 수 있으니 배열에 추가하는 형식으로 진행했다. 이후 검색 조건에 맞는 사람들의 수를 구할 때 일반적인 탐색을 진행하게 되면 시간초과가 발생할 수 있으니 이진탐색 알고리즘을 이용해 해당 조건의 점수들 중 결과로 만족하는 값을 탐색..
· CS
이분 탐색 알고리즘(Binary Search Algorithm) 정의 이미 정렬된 배열에서 탐색 범위를 두 부분 리스트로 나눠 절반씩 좁혀가며 필요한 부분에서만 탐색하도록 제한하여 원하는 값을 찾는 알고리즘이다. 동작 이진 탐색은 정렬된 배열이 필요하며, Left, Right, Mid의 변수가 필요하게 된다. Left는 왼쪽 끝 인덱스, Right는 오른쪽 끝 인덱스, Mid는 (Left + Right)/2 로 구할 수 있다. const binarySearch = (arr, targetValue) => { let left = 0; let right = arr.length - 1; while (left targetValue) { right = mid - 1; } else if (arr[mid] < targ..
58청춘
'이진탐색' 태그의 글 목록