首页 > 代码库 > 数组查找
数组查找
对于一维数组,通常会用到以下查找方法,来查找数组中是否存在某个元素。
(一)逐个元素对比,找出要查找的对象
public static int search(int[] array, int value){ for(int i = 0; i< array.length; i++) { if(value =http://www.mamicode.com/= array[i]) { return i; } } return -1;}public static void main(Srting[] args){ int[] a = new int[]{1, 5, 3, 7 ,2 ,10,11,4}; int value = http://www.mamicode.com/9; int index = search(a, value); System.out.println(index);}
上述代码,查找数组a中值为9的元素的位置,由于a中没有9,所以返回-1
(二)使用二分法查找对象
在使用二分法查找时,必须先为数组排序。
折半查找法也称为二分查找法:它的基本思想是,将n个元素分成个数大致相同的两半,取a[n/2]与欲查找的x作比较,如果x=a[n/2]则找到x,算法终止。如 果x<a[n/2],则我们只要在数组a的左半部继续搜索x(这里假设数组元素呈升序排列)。如果x>a[n/2],则我们只要在数组a的右 半部继续搜索x。
二分查找的方法可以这样写:
数组查找
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。