0
点赞
收藏
分享

微信扫一扫

牛客1012-简单的数据结构

犹大之窗 2022-03-11 阅读 65

链接:登录—专业IT笔试面试备考平台_牛客网
来源:牛客网

题目描述

栗酱有一天在网上冲浪的时候发现了一道很有意思的数据结构题。

该数据结构形如长条形。

一开始该容器为空,有以下七种操作。

1 a从前面插入元素a

2 从前面删除一个元素

3 a从后面插入一个元素

4 从后面删除一个元素

5 将整个容器头尾翻转

6 输出个数和所有元素

7 对所有元素进行从小到大排序

这道题主要是deque,之前见到过又忘了,这个是双端队列,记录一下加深记忆

#include <iostream>
#include <algorithm>
#include <deque>
using namespace std;

const int N = 10010, mod = 1000000007;
deque <int> q;

int main() {
	int n, m, a, x;
	cin >> n >> m;
	while (m--) {
		cin >> x;
		
		if (x == 1)
			cin >> a, q.push_front(a);
			
		if (x == 2)
			q.pop_front();
			
		if (x == 3)
			cin >> a, q.push_back(a);
			
		if (x == 4)
			q.pop_back();
			
		if (x == 5)
			reverse(q.begin(), q.end());
			
		if (x == 6) {
			cout << q.size() << endl;
			for (int i : q)
				cout << i << " ";
			cout << endl;
		}
		
		if (x == 7)
			sort(q.begin(), q.end());
			
	}
}
举报

相关推荐

0 条评论