Java Arrays

描述

使用二分查找数组元素,并运用 Java Arrays ,打印 数组元素

题目

有以下数组:

int [] arr = {10,20,3,6,1,2,5};

要求:

  • 请打印数组所有元素。
  • 使用二分查找,查找元素在数组中的索引位置。

题目解决思路

  1. 使用 Arrays 类的 toString 方法打印原数组。
  2. 定义二分查找方法,方法参数为数组、查找的元素,返回值为索引位置,如果元素不存在,则返回 -1。

代码具体实现

public class Test { public static void main(String[] args) { System.out.println("嗨客网(www.haicoder.net)\n"); int [] arr = {10,20,3,6,1,2,5}; System.out.println("数组元素:" + Arrays.toString(arr)); int index = fun(arr,2); System.out.println("索引位置:" + index); } public static int fun(int [] arr,int value){ int start = 0; int end = arr.length - 1; while(start < end){ int mid = (start + end)/2; if(value == arr[mid]){ return mid; }else if(value > arr[mid]){ end = mid - 1; }else if(value < arr[mid]){ start = mid + 1; } } return -1; } }

运行结果如下图:

04_java Arrays.png

以上案例使用二分查找查找元素,返回该元素的索引。