자바 검색 예제

그것은 매우 기본적인 검색 알고리즘이지만 시간 복잡성의 선형 증가로 인해 많은 생산 시스템에서 응용 프로그램을 찾을 수 없습니다. 바이너리 또는 Logarithmic 검색은 주로 빠른 검색 시간으로 인해 가장 일반적으로 사용되는 검색 알고리즘 중 하나입니다. 이 자습서에서는 이진 검색 알고리즘 구현 및 선형 검색 대신 사용하는 것이 더 바람직한 시나리오를 보여 주었습니다. 이 알고리즘의 가장 좋은 경우 시간 복잡성은 O(로그 로그 N)이지만 최악의 경우, 즉 요소가 균일하게 분산되지 않은 경우 O(N)인 선형 검색 시간 복잡성과 비교할 수 있습니다. 힌트 : 시간별로 정렬하고 첫 번째 i 통행료의 누적 합계를 계산한 다음 이진 검색을 사용하여 원하는 간격을 찾습니다. 지수 검색은 2의 힘에서 즉 지수 위치에서 점프하여 요소를 검색하는 데 사용됩니다. 예를 들어, 혼동은 결과 목록에서 어드바운드 및 서라운드와 같은 단어에 인접해 있습니다. 선형 검색에는 요소가 발견되거나 구조의 끝에 도달할 때까지 지정된 데이터 구조의 요소를 순차적으로 검색하는 작업이 포함됩니다. 요소가 발견되면 검색이 종료됩니다. 그렇지 않으면 목표 요소가 중간 요소보다 작거나 큰지 여부에 따라 배열의 적절한 파티션을 분할하고 선택하여 요소를 계속 찾습니다. 정렬된Array 및 정수 배열에서 검색할 int 키는 Java Arrays 클래스의 이진 Search 메서드에 인수로 전달됩니다. 이 검색의 공간 복잡성은 검색할 요소를 저장하는 하나의 공간 단위만 필요하므로 O(1)입니다. 검색은 일반 비즈니스 응용 프로그램에서 수행되는 가장 일반적인 작업 중 하나입니다.

여기에는 배열, 목록, 맵 등과 같은 데이터 구조에 저장된 일부 데이터를 가져오는 작업이 포함됩니다. 이 검색 작업은 최종 사용자에 대한 응용 프로그램의 응답성을 결정하는 경우가 많습니다. 이진 트리를 검색하는 시간 복잡성은 O(로그(N))입니다. 이 경우 이 범위 값은 8에서 달성되고 정수[8]의 요소는 95입니다. 따라서 이진 검색을 수행하는 범위는 알고리즘 검색이 요소를 확인하거나 요소가 저장된 모든 데이터 구조에서 요소를 검색하도록 설계되었습니다. 검색 작업의 유형에 따라 이러한 알고리즘은 일반적으로 두 가지 범주로 분류됩니다: 보간 검색은 정렬된 배열의 요소를 검색하는 데 사용됩니다. 이 검색은 기본 구조의 데이터가 균일하게 분산되어 있다는 것을 알고 있는 경우에 특히 유용합니다.

Comments

Comments are closed.