C++数据结构之顺序查找(四)

顺序查找用于无序的数组,二分查找用于有序的数组。
基本思路:从表的一端开始,顺序扫描线性表,依次将扫描到的关键字和给定值k比较,若当前扫描的关键字与k相等,则查找成功;若扫描结束后,仍未发现关键字等于k的记录,则查找失败。
顺序查找简单直接,效率低!

C++数据结构之顺序查找(四)_第1张图片

C++代码如下:

#include <iostream>

using namespace std;

int SequentialSearch(int *a, const int n, const int x);

int main()
{
	int m[] = {2,4,6,8,0,1,3,5,7,9};
	int 结果;

	int num = 75;

	结果 = SequentialSearch(m,10,num);

	if(结果 < 0)
		cout << "没找到!" << endl;
	else
		cout << "在m[" << 结果 << "]里找到" << num << endl;

	return 0;
}

int SequentialSearch(int *a, const int n, const int x)
{
	int i;
	for(i = 0; i < n; i++)
	{
		if(a[i] == x)
			return i;
	}
	if(i==n) return -1;
}

你可能感兴趣的:(C++)