题解 | #简单的数据结构#

简单的数据结构

https://ac.nowcoder.com/acm/problem/14661

思路

List会超!List会超!List会超!(可能是我太蒟蒻了写不出来)
最后还是改成了双向链表。

代码

#include<bits/stdc++.h>
using namespace std;

int n,m,opt,x;
deque<int>a;

int main(){
    scanf("%d%d",&n,&m);
    for(int i=1;i<=m;i++){
        scanf("%d",&opt);
        if(opt==1){
            scanf("%d",&x);
            a.push_front(x);
        }
        if(opt==2){
            a.pop_front();
        }
        if(opt==3){
            scanf("%d",&x);
            a.push_back(x);
        }
        if(opt==4){
            a.pop_back();
        }
        if(opt==5){
            reverse(a.begin(),a.end());
        }
        if(opt==6){
            printf("%d\n",a.size());
            for(deque<int>::iterator it=a.begin();it!=a.end();){
                printf("%d",*it);
                it++;
                if(it!=a.end()) printf(" ");
                else{
                    putchar('\n');
                    break;
                }
            }
        }
        if(opt==7){
            sort(a.begin(),a.end());
        }
    }
    return 0;
} 
全部评论
把list里的反转用reserve(li.begin(),li.end())就不会超,用li.reserve()就会
点赞 回复 分享
发布于 2022-07-11 21:23

相关推荐

在笔试的大西瓜很矫健:校招数分不用想了,这经历和学历都不够用,大厂更别想,初筛都过不了,说点不好听的小厂数分都进不去(小厂也是假数分),要两个对口实习+3个项目(或者3+2),而且要有含金量才能补一点你的学历劣势。 建议刷实习,社招找数分,校招看运气,能入行业就行,可以运营转数分
点赞 评论 收藏
分享
评论
1
1
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务