作入门算法题的时候遇到了一个关于求队列中某数的位置的问题。算法
因而本身想了个空间换效率的方法:code
数字进来的时候以本身的值与进来的序号构建一个二维表,表中只记录每个数出现的第一次的位置。最后输入某数的时候能够直接拿到它的位置队列
int n,m,o; cin>>n; int a[10]={-1,-1,-1,-1,-1,-1,-1,-1,-1,-1}; for(int i=0;i<n;i++){ cin>>m; if(a[m]==-1){ a[m] =i+1; } } cin>>o; cout<<a[o];