0
C++에서 프로젝트에 대한 재귀 적 바이너리 검색 함수를 작성 중이며 어떤 이유로 무한히 실행되어 제대로 실행되지 않습니다. 내 코드는 다음과 같습니다 :C++의 재귀 바이너리 검색 함수
int recursiveBin(const int list[], int listLength, int searchItem)
{
if(listLength == 0)
return -1;
int mid = (listLength - 1)/2;
if(list[mid] > searchItem)
return recursiveBin(list, mid - 1, searchItem);
else if(list[mid] < searchItem)
return recursiveBin(list, mid + 1, searchItem);
else
return mid;
}
누군가가 도와 줄 수 있습니까? 내 기능과 무한 루프가 어디에서 발생하는지 잘 모르겠습니다.
디버거를 사용하십시오. – chris
종이 한 장을 가져 와서 샘플 입력을 만들고 결과를 기록해 둡니다. 어느 시점에서 잘못되었는지 파악하고 수정하십시오. –