검색 알고리즘에는 아래와 같이 2가지 유형이 있습니다.
const linearSearch = (arr, value) => { for (let item of arr) { if (item == value) { return true; } } return false; }; console.log(linearSearch([1,2,3,4,5,6,7,8,9], 7)); console.log(linearSearch([1,2,3,4,5,6,7,8,9], 3)); console.log(linearSearch([1,2,3,4,5,6,7,8,9], 10)); console.log(linearSearch([1,2,3,4,5,6,7,8,9], 9));
이진 검색
const binarySearch = (arr, value, low = 0, high=arr.length-1) => { const mid = Math.floor((low high)/2); const midValue = arr[mid]; if (low > high) { return false; } if (midValue == value) { return true; } else if (midValue > value) { return binarySearch(arr, value, low, mid); } else { return binarySearch(arr, value, mid 1, high); } } const arr = [9,8,7,6,5,4,3,2,1]; arr.sort((a,b) => a-b); console.log(binarySearch(arr, 7)); console.log(binarySearch(arr, 3)); console.log(binarySearch(arr, 10)); console.log(binarySearch(arr, 9));
부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.
Copyright© 2022 湘ICP备2022001581号-3