怀旧书本
#include <bits/stdc++.h>
using namespace std;

const int N = 1e5 + 10;
int head, e[N], ne[N], idx;

void init() {
    head = -1;
    idx = 0;
}

void insert_to_head(int v) {
    e[idx] = v;
    ne[idx] = head;
    head = idx;
    ++idx;
}

void insert(int k, int v) {
    e[idx] = v;
    ne[idx] = ne[k];
    ne[k] = idx;
    ++idx;
}

void remove(int k) {
    ne[k] = ne[ne[k]];
}

int main() {
    init();
    int m, i = 0, t = 0, t2 = 0;
    cin >> m;
    while (i++ < m) {
        char op;
        cin >> op;
        if (op == 'H') {
            cin >> t;
            insert_to_head(t);
        } else if (op == 'D') {
            cin >> t;
            if (t == 0) {
                head = ne[head];
            } else {
                remove(t - 1);
            }
        } else {
            cin >> t >> t2;
            insert(t - 1, t2);
        }
    }
    
    for (int i = head; i != -1; i = ne[i]) {
        cout << e[i] << " ";
    }
    return 0;
}
本文为原创文章,欢迎分享,勿全文转载,如果内容你实在喜欢,可以加入收藏夹,说不定哪天故事又继续更新了呢。
本文地址:https://qoogle.top/single-linked-list/
最后修改日期:2020年4月29日

作者

留言

撰写回覆或留言

发布留言必须填写的电子邮件地址不会公开。