本文共 700 字,大约阅读时间需要 2 分钟。
一、顺序查找
顺序查找是一种最简单的查找方法。它的基本思想是:从表的一端开始,顺序扫描线性表,依次将扫描得到的关键字和给定值k相比较,若当前扫描到的关键字与k相等,则查找成功;若扫描结束后,仍未找到关键字等于k的记录,则查找失败。
示例:在如下数字构成的数字 A = [1, 2, 3, 4, 5, 6, 7, 8, 9]中,查找给定的数字9是否存在。若存在则返回被查对象在序列中的位置,若不存在则输出没有找到的提示信息。
![]()
public void search(int[] a, int x) { int i = 0; while(i <= a.length - 1 && a[i] != x) { i++; } if (i >= a.length) { System.out.println("序列中不存在要查找的元素"); } else { System.out.println("查找成功,查找的元素在序列中的位置为:" + (i + 1)); }}
public static void main(String[] args) { SeqSearch search = new SeqSearch(); int[] i = { 1,2,3,4,5,6,7,8,9}; search.binSearch(i, 9);}
算法分析:顺序查找实际上是将关键字与序列中每个元素进行一次比较从而确定结果的查找方法,
其算法复杂度与序列表的长度有直接关系,若查找成功,则比较次数小于或者等于n;若 查找不成功,则查找次数为n。所以,顺序查找的时间复杂度为O(n)。
转载地址:http://wfqr.baihongyu.com/