折半查找算法(BinarySearch)
1、BinarySearch算法的描述
查找算法是一种在数字列表中确定目标元素所在位置的算法。假设给定一个目标元素 11 和一个包含元素 11 的数字列表(例如 10, 11, 12,13,14, 15, 16, 17, 18, 19, 20),然后在该数字列表中找到目标元素的位置。
折半查找算法也叫做对分查找和二分查找。折半查找算法适合用于有序的数字列表,无序的数字列表适合顺序查找(SequentialSearch)。折半查找算法逻辑是从一个数字列表的中间元素开始查找,这将能够判别出目标元素在列表的前半部分还是在列表的后半部分;如果在前半部分,就不需要查找后半部分;如果在后半部分,就不需要查找前半部分。这将使得算法的性能更好和效率更高。
重复这个过程直到找到目标元素或者确定目标元素不在这个数字列表中。如果找到该目标元素,则输出目标元素的位置;如果没有找到,则返回-1。当然,返回值可以随意设定,不一定是-1,其目的是为了更好的人机交互。