C++數據結構與算法\順序查找SequentialSearch()

4、順序查找

簡介:

沒有排序的數據,只能順序查找

順序查找速度較慢,1000萬個數據可能要找500萬次。

int SequentialSearch(int* List, const int N, const int X)
{
	int i;
	for (i = 0; i < N; i++)
	{
		// 如果這個數就是我們要找的,那就直接返回這個數的下標i
		if (List[i] == X) return i;
	}
	// 如果循環完了都沒找到這個數, 那i就會等於N。 返回-1表示失敗
	if (i == N) return -1;
}
int main()
{
	int Num[] = { 10, 9, 8, 7, 6, 5, 4, 3, 2, 1 };		// 數組
	int Num_Size = sizeof(Num) / sizeof(int);			// 數組大小
	int num;

	cout << "請輸入一個想查找的數字:";
	cin >> num;
	// 這個函數是返回找到的數的下標, 而不是要找的數字本身。
	int Result = SequentialSearch(Num, Num_Size, num);	// 結果

	if (Result == -1)
	{
		cout << "沒找到這個數!" << endl;
	}
	else
	{
		cout << "數字 >" << num << "被找到!下標是 >" << Result << endl;
	}
	return 0;
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章