查找算法介绍
在 java 中,我们常用的查找有四种:
- 顺序(线性)查找
- 二分查找/折半查找
- 插值查找
- 斐波那契查找
8.2 线性查找算法
有一个数列: {1,8, 10, 89, 1000, 1234} ,判断数列中是否包含此名称【顺序查找】 要求: 如果找到了,就提
示找到,并给出下标值
代码介绍
package com.atguigu.search;
public class SeqSearch {
public static void main(String[] args) {
int arr[]={1,9,11,-1,34,89};//没有顺序的数组
int index=seqSearch(arr,11);
if(index==-1){
System.out.println("没有找到");
}else{
System.out.println("找到,下标为="+index);
}
}
/**
* 这里我们实现的线性查找是找到一个满足条件的值,就返回
* @param arr
* @param value
* @return
*/
public static int seqSearch(int[] arr,int value){
// 线性查找是逐一比对,发现有相同值,就返回下标
for(int i=0;i<arr.length;i++){
if(arr[i]==value){
return i;
}
}
return -1;
}
}