Win a copy of Design for the Mind this week in the Design forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

Binary Search

 
Pawan Arora
Ranch Hand
Posts: 105
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator

I don't know why in the above programme the result of binary search is -2. Any reason?
 
Rob Spoor
Sheriff
Pie
Posts: 20511
54
Chrome Eclipse IDE Java Windows
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
You'll need to sort the array first. Binary search by definition works only on sorted arrays. This is because of the way it searches for elements:

1) start at the center
2) check the current element
3)
a) if equal then done
b) if smaller then all previous elements are smaller; get the binary search of the second half of the array
c) if larger then all next elements are larger; get the binary search of the first half of the array

In the end the first / second half of the array will be only one element and the recursion can end.
[ November 23, 2008: Message edited by: Rob Prime ]
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic