数据结构-怀化学院期末题(488)

发布时间:2024年01月07日

顺序查找

题目描述:

实现顺序查找。要求查找给定的值在数据表中相应的存储位置。本题目假定所有的元素互不相同,并且要求查找顺序为从后往前查询。
输入:
输入包含若干个测试用例,第一行为测试用例个数k。每个测试用例占3行,其中第一行为元素个数n,第二行为n个元素值,即数据表中的元素,第三行为需要查找的元素。
输出:
对每一测试用例,分别用一行输出两个值,分别表示相应的位置和查找次数,用空格隔开。如果查找不成功,则位置表0表示。

输入样例:

1
5
2 4 1 7 9
7

输出样例;

4 2?

代码:

#include<iostream>
#include<cstdio>
#include<string>
#include<cstring>
#include<string.h>
#include<algorithm>
#include<cmath>
#include<vector>
#include<queue>
#include<stack>
#include<map>
using namespace std;
typedef pair<int,int> PII;
const int N = 1e5 + 10;

int main(){
	int k;
	cin >> k;
	while(k --){
		int m;
		int a[N];
		int num;
		cin >> m;
		for(int i = 1;i <= m;i ++)
			cin >> a[i];
		cin >> num;
		int flag = 0;
		for(int i = m;i >= 1;i --){
			if(a[i] == num){
				cout << i << ' ' << m - i + 1 << endl;
				flag = 1;
			} 
		}
		if(flag == 0) cout << 0 << " " << m << endl;
	}
	return 0;
}

?

文章来源:https://blog.csdn.net/weixin_72982195/article/details/135429635
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。