39 lines
882 B
C++
39 lines
882 B
C++
// 编写一个程序,输出在顺序表(3,6,2,10,l,8,5,7,4,9) 中采用顺序查找方法查找关键字5的过程。
|
|
#include <vector>
|
|
#include <iostream>
|
|
|
|
using namespace std;
|
|
|
|
template <typename T>
|
|
int seqSearch(vector<T> l,T value) {
|
|
if (l.empty()) {
|
|
cout << "空表" << endl;
|
|
return -1;
|
|
}
|
|
bool found = false;
|
|
int index = 0;
|
|
for (int i=0; i<l.size(); i++) {
|
|
cout<<"正在顺序查找第"<<i<<"位元素"<<"其值为"<<l.at(i)<<endl;
|
|
|
|
if (l.at(i) == value) {
|
|
found = true;
|
|
index = i;
|
|
break;
|
|
}
|
|
}
|
|
|
|
if (!found) {
|
|
cout<<"未查找到:"<<value<<endl;
|
|
return -1;
|
|
}
|
|
|
|
cout<<"查找次数:"<<index+1<<endl;
|
|
return index;
|
|
}
|
|
|
|
int main() {
|
|
vector<int> l={3,6,2,10,'l',8,5,7,4,9};
|
|
int index=seqSearch(l,5);
|
|
cout<<index<<endl;
|
|
return 0;
|
|
} |