이진 검색 C++ 단순 프로그램 알고리즘 자료 전체 개요
이진 검색은 중간 값(중앙값)을 찾고 검색된 값이 앞 또는 뒤에 오는지 여부를 확인하기 위해 비교를 수행한 다음 동일한 방식으로 나머지 절반을 검색합니다. 이진 검색은 다음에 대해 수행됩니다.
) 특히 매우 많은 양의 데이터에 대해 검색된 데이터와 테이블의 데이터 간에 수행해야 하는 비교 작업의 수를 최소화합니다.
b) 검색이 앞, 뒤, 중앙에서 이루어지기 때문에 연산부하도 적다.
다) 기본 원리는 데이터를 찾을 때까지 또는 검색 공간을 다시 분할할 수 없을 때까지(즉, 데이터를 찾지 못할 가능성이 있음을 의미) 검색 공간을 반복적으로 분할하는 프로세스입니다.
d) 그리고 이 간단한 C++ 언어 프로그램에서 이진 검색을 위한 주요 조건은 테이블의 데이터가 정렬되어야 한다는 것입니다.
이진 검색 알고리즘 C++
1. 먼저 초기 위치가 0이고 최종 위치 = N - 1이고, 공식으로 중간 데이터 위치를 검색합니다. . 그런 다음 중간 위치 공식, 즉 = (시작 위치 + 끝 위치) div 2.3을 사용하여 중간 데이터 위치를 찾습니다. 그런 다음 검색된 데이터를 중간 데이터와 비교합니다. 동일하면 데이터를 찾으면 처리 완료 b. 이보다 작으면 과정을 반복하지만 최종 위치는 중간 위치 -1.c와 동일한 것으로 간주됩니다. 크면 반복하지만 초기 위치는 +1.4의 중간 위치와 동일한 것으로 간주됩니다. 데이터를 찾거나 찾을 때까지 두 번째 단계부터 반복합니다.5. 이 이진 검색은 발견된 데이터가 초기 위치가 끝 위치보다 크면 종료됩니다. 초기 위치가 최종 위치보다 크면 데이터를 찾을 수 없음을 의미합니다.이진 검색 방법으로 검색
#include네임스페이스 std 사용 정수 메인() { int n, 숫자[12], 왼쪽, 오른쪽, 중앙, 온도, 키; 부울 발견 = 거짓;
cout<<'하디팔'<
for(int i=0; i
피부=0; kanan=n-1;
동안(왼쪽<=오른쪽) { 가운데=(왼쪽 + 오른쪽)/2; if(키 == 숫자[가운데]) { 발견 = 사실; 부서지다; } else if (키 < 숫자 [가운데]) { 오른쪽 = 중앙 -1; } 또 다른 { 왼쪽 = 중앙 +1; } } if (찾음 == true) cout<<'번호를 찾았습니다!'; 또 다른 cout<<'번호를 찾을 수 없습니다'; 반환 0; }
출력 - 단순 이진 검색 C++ 프로그램 예제