From 7f18be8b7e127e5ec62828fc8e775e18bed1b4fd Mon Sep 17 00:00:00 2001 From: aimof Date: Thu, 12 Apr 2018 13:23:09 +0900 Subject: [PATCH] Fix the way calculate average in BinarySearch There is a possibility to cause overflow. I fix it. --- BinarySearch/BinarySearch.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/BinarySearch/BinarySearch.go b/BinarySearch/BinarySearch.go index 9e34c28..e5eea14 100644 --- a/BinarySearch/BinarySearch.go +++ b/BinarySearch/BinarySearch.go @@ -4,7 +4,7 @@ func BinarySearch(array []int, number int) int { minIndex := 0 maxIndex := len(array) - 1 for minIndex <= maxIndex { - midIndex := int((maxIndex + minIndex) / 2) + midIndex := int(minIndex + (maxIndex-minIndex)/2) midItem := array[midIndex] if number == midItem { return midIndex