Java-排序与使用二分法查找

数组

        int [] b; //int c[];  声明一维数组
        b = new int[10];  //创建数组,为一维数组分配空间
        //或者int [] b ={0,1,2,3,4,5};
        double d[][];   //double[] []e; 声明二维数组
        d = new double[4][5];  //创建数组,为二维数组分配空间
        //或者double d[][] = new double [4][5];

二分法判断一个输入的数是否和输入的数组中某个元素的值相同

package ccf_test;
//键盘输入数组;二分法判断一个数是否和数组中某个元素的值相同
import java.util.*;
public class Example2_7{
    public static void main(String args[]){
        Scanner sc = new Scanner(System.in);
        System.out.println("输入你想要判断的数:");
        int number = sc.nextInt();
        System.out.println("输入数组个数以及数组元素:");
        while(sc.hasNext()){
            int n = sc.nextInt(); //数组个数
            int[] a = new int[n]; //数组
            for (int i=0; i//依次输入数组元素
            }
            Arrays.sort(a); //Array调用排序方法,数组a按照升序排序
            System.out.println(Arrays.toString(a)); //输出数组元素
            int index = Arrays.binarySearch(a, number); //Array调用二分法
            if(index>=0){
                System.out.println(number+"和数组中索引为"+index+"的元素值相同");
            }
            else{
                System.out.println(number+"不与数组中的任何元素值相同");
            }
            }
    }
}
输入你想要判断的数:
55
输入数组个数以及数组元素:
5
55555 555 5 5555 55
[5, 55, 555, 5555, 55555]
55和数组中索引为1的元素值相同

你可能感兴趣的:(Java)