标签:
顺序查找又称线性查找:
基本思想:从查找表的一端开始,向另一端逐个按给定值K与关键字进行比较,若找到,查找成功;
并给出记录在表中的位置;若整个表检测完,仍未找到与K值相同的关键字,则查找失败;
优点:对表中数据的存储没有要求,对于链表,只能进行顺序查找;
缺点:当n值很大时,平均查找长度较大,效率低;
import java.util.Scanner;
public class OrderSearch {
/**
* 顺序查找算法
*
* @param srcArray 有序数组
* @param key 查找元素
* @return key的数组下标,没找到返回-1
*/
public static void main(String[] args) {
int[] srcArray = {3,5,11,17,21,23,28,30,32,50,64,78,81,95,101};
System.out.println("请输入需要查找的数:");
Scanner input=new Scanner(System.in);
int key=input.nextInt();
input.close();
System.out.println("顺序查找算法结果 :"+orderSearch(srcArray,key));
}
private static int orderSearch(int[] srcArray, int key){
for(int i=0;i<srcArray.length;i++){
if (srcArray[i]==key) {
return i;
}
}
return -1;
}
}
标签:
原文地址:http://www.cnblogs.com/extraman/p/4445813.html