标签:
[ 什么是顺序查找 ]
顺序查找又叫线性查找,是最基本的查找技术,它的查找过程是:从表中第一个或最后一个记录开始,逐个和给定的值比较,如相等则查找成功;如直到最后一个值仍不等时,则表中没有所查的记录,查找不成功。
[ 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)
标签:
原文地址:http://blog.csdn.net/zdp072/article/details/44134883