Java查找算法(二): 顺序查找

[ 什么是顺序查找 ]

顺序查找又叫线性查找,是最基本的查找技术,它的查找过程是:从表中第一个或最后一个记录开始,逐个和给定的值比较,如相等则查找成功;如直到最后一个值仍不等时,则表中没有所查的记录,查找不成功。

[ Java实现顺序查找 ]

public class SequentialSearch {public static void main(String[] args) {Integer target = 6;Integer[] iArr = { 3, 2, 6, 8, 5, 1, 7, 9 };Integer index = sequentialSearch(iArr, target);System.out.println(index);}public static <T> Integer sequentialSearch(T[] t, T target) {for (int i = 0; t != null && i < t.length; i++) {if (t[i] == target) {return i;}}return -1;}}

[ 顺序查找的优缺点 ]

优点:代码简单易懂

缺点:当数据量大的时候,查找效率极为低下,所以该算法适合小量数据。

[ 顺序查找的算法复杂度 ]

查找成功最好的情况是在第一个位置就找到了,算法时间复杂度为O(1)

最坏的情况是在最后一个位置就找到了,时间复杂度为O(n)

关键字在任何一个位置的概率是相同的,所以平均查找次数为(n+1) / 2,所以最终时间复杂度为O(n)

,最有效的资本是我们的信誉,它24小时不停为我们工作。

Java查找算法(二): 顺序查找

相关文章:

你感兴趣的文章:

标签云: