题解 | #【模板】链表#

【模板】链表

http://www.nowcoder.com/practice/97dc1ac2311046618fd19960041e3c6f

#include <bits/stdc++.h>
using namespace std;
struct Node
{
    int v;
    Node *next;
    Node(int x): v(x), next(NULL) {}
};
int main()
{
    int n, a, b;
    string s;
    cin>>n;
    Node *dummy = new Node(-1);
    while (n--) {
        cin>>s>>a;
        if (s == "delete") {
            Node *q = dummy->next;
            if (!q) continue;
            Node *pre = dummy;
            while (q) {
                if (q->v == a) {
                    pre->next = q->next;
                    break;
                }
                q = q->next;
                pre = pre->next;
            }
        } else if (s == "insert") {
            cin>>b;
            Node *q = dummy->next;
            bool flag = true;
            if (!q) {
                dummy->next = new Node(b);
                continue;
            }
            while (q) {
                if (q->v == a) {
                    Node *tmp = new Node(a);
                    tmp->next = q->next;
                    q->next = tmp;
                    q->v = b;
                    flag = false;
                    break;
                }
                if (!q->next && flag) {
                    q->next = new Node(b);
                    break;
                }
                q = q->next;
            }
        }
        
    }
    Node *q = dummy->next;
    if (!q) cout<<"NULL"<<endl;
    else {
        while (q) {
            cout<<q->v<<" ";
            q = q->next;
        }
    }
    
    return 0;
}
全部评论

相关推荐

11-20 17:33
已编辑
门头沟学院 嵌入式工程师
小米汽车 底软测开岗 n*15(15大概率拿不到) 双非硕
点赞 评论 收藏
分享
喜欢吃蛋糕仰泳鲈鱼是我的神:字节可以找个hr 给你挂了,再放池子捞
点赞 评论 收藏
分享
11-02 09:49
已编辑
货拉拉_测试(实习员工)
热爱生活的仰泳鲈鱼求你们别卷了:没事楼主,有反转查看图片
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务