1.1 线性查找
线性查找又称顺序查找,是一种最简单的查找方法,它的基本思想是从第一个记录开始,逐个比较记录的关键字,直到和给定的K值相等,则查找成功;若比较结果与文件中n个记录的关键字都不等,则查找失败。
1.2 线性查找代码实现
package com.yuanxw.datastructure.chapter21;
import java.util.Arrays;
/**
* 线性查找又称顺序查找,是一种最简单的查找方法,它的基本思想是从第一个记录开始,
* 逐个比较记录的关键字,直到和给定的K值相等,则查找成功;若比较结果与文件中n个记录的关键字都不等,则查找失败。
*/
public class LinearSearch {
public static void main(String[] args) {
int[] array = new int[]{
-7, -4, -2, 5, 8, 10};
System.out.println("原始数据:" + Arrays.toString(array));
int index = linearSearch(array, 8);
System.out.println("【线性查找】结果下标位置:" + index);
}
/**
* 线性查找
*
* @param array
* @param value
* @return
*/
public static int linearSearch(int[] array, int value) {
for (int i = 0; i < array.length; i++) {
if (array[i] == value) {
return i;
}
}
return -1;
}
}
执行结果:
原始数据:[-7, -4, -2, 5, 8, 10]
【线性查找】结果下标位置:4
1.3 线性查找总结
- 算法优点:实现简单,应用范围广。
- 算法缺点:效率极低,需要一个元素一个元素的比较,最坏情况下需要把数组中的元素都比较一遍。