omid68
شنبه 26 دی 1388, 16:00 عصر
سلام بچه ها من این الگوریتم رو یکی از دوستام نوشته برای جستجوی دو دویی می خواستم ببینم ور.ودی هایی که در این تابع است به چه دردی می خوره و چی ها هستن
int BinarySearch(int A, int value, int low, int high) {
if (high < low)
return -1 // not found
mid = (low + high) / 2
if (A[mid] > value)
return BinarySearch(A, value, low, mid-1)
else if (A[mid] < value)
return BinarySearch(A, value, mid+1, high)
else
return mid // found
}
int BinarySearch(int A, int value, int low, int high) {
if (high < low)
return -1 // not found
mid = (low + high) / 2
if (A[mid] > value)
return BinarySearch(A, value, low, mid-1)
else if (A[mid] < value)
return BinarySearch(A, value, mid+1, high)
else
return mid // found
}