Java基本查找算法--顺序查找

一、顺序查找

顺序查找是一种最简单的查找方法。它的基本思想是:从表的一端开始,顺序扫描线性表,依次将扫描得到的关键字和给定值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)。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

书香水墨

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值