给出一个队列和要查找的数值,找出数值在队列中的位置,队列位置从1开始
要求使用带哨兵的顺序查找算法
给出一个队列和要查找的数值,找出数值在队列中的位置,队列位置从1开始
要求使用带哨兵的顺序查找算法
第一行输入n,表示队列有n个数据
第二行输入n个数据,都是正整数,用空格隔开
第三行输入t,表示有t个要查找的数值
第四行起,输入t个数值,输入t行
每行输出一个要查找的数值在队列的位置,如果查找不成功,输出字符串error
#include<iostream> using namespace std; int cfind(int *array,int n,int key) { array[0]=key; for(int i=n;;i--) { if(array[i]==key) return i; } return 0; } int main() { int n; cin>>n; int *array=new int[n+1]; for(int i=1;i<=n;i++) { cin>>array[i]; } int t; cin>>t; while(t--) { int key; cin>>key; int result=cfind(array,n,key); if(result==0) cout<<"error"<<endl; else cout<<result<<endl; } delete []array; return 0; }
原文:https://www.cnblogs.com/SZU-DS-wys/p/12182948.html