集册 Java实例教程 二进制搜索函数

二进制搜索函数

欢马劈雪     最近更新时间:2020-01-02 10:19:05

351
提示:您可在线编辑运行本教程的实例 - 运行实例,去试试!
二进制搜索函数

class Binary_Search

{/**时代Java公众号 - N o w J a  v a . c o m**/

    // Function for binary search

    public static int BinarySearch(int[] array, int size, int desired)

    {

        int left = 0, right = size - 1, middle;


        while(left <= right)

        {

            middle = left + (right - left) / 2;


            if(array[middle] == desired)

                return middle;

            else if(desired < array[middle])

                right = middle - 1;

            else if(desired > array[middle])

                left = middle + 1;/**来自 时 代 J a v a - nowjava.com**/

        }


        return -1;

    }


    // Driver Function

    public static void main(String[] args)

    {

        int[] array = {1, 2, 3, 4, 5, 6, 7};


        // Element 4 to be searched

        if(BinarySearch(array, 7, 4) != -1)

            System.out.println("Found");

        else

            System.out.println("Not Found");


        
展开阅读全文