单链表(模板)AcWing.826

code:

#include<bits/stdc++.h>//xfl
using namespace std;
const int N = 1e5+5;
struct Biao{int v,nxt;}b[N];
int h,cnt,n,k,x;
void addhead(int x){b[++cnt].v=x;b[cnt].nxt=h;h=cnt;}
void addk(int k,int x){b[++cnt].v=x;b[cnt].nxt=b[k].nxt;b[k].nxt=cnt;}
void deleted(int k){b[k].nxt=b[b[k].nxt].nxt;}
int main()
{
    string a;
    scanf("%d",&n);
    while(n--)
    {
        cin>>a;
        if(a=="H"){scanf("%d",&x);addhead(x);}
        if(a=="D"){scanf("%d",&x);if(!x)h=b[h].nxt;else deleted(x);}
        if(a=="I"){scanf("%d%d",&k,&x);addk(k,x);}
    }
    for(int i=h;i;i=b[i].nxt)printf("%d ",b[i].v);
    return 0;
}

 

posted @ 2020-12-18 15:59  纸上的彩虹  阅读(72)  评论(0)    收藏  举报