算法与数据机构入门经典(STL栈和STL队列的基础知识)

  1.    栈,是先进后出的线性表,标准STL的栈包括如下5种操作,设栈为S:

  • 1.取出栈顶元素:S.top();
  • 2.判断栈是否为空:S.empty();
  • 3.将元素x添加至栈:S.push();
  • 4. 弹出栈顶:S.pop()
  • 5.求栈存储元素的个数:S.size()


2.STL stack(栈),课堂练习

思考几分钟吗,填空一下。

#include <stdio.h>
#include <stack>
int main() {
	std::stack<int> S;
	if (S.empty() == true) {
		printf("S is empty!\n");
	}
	S.push(5);
	S.push(6);
	S.push(10);
	printf("S.top =%d\n", S.top());
	S.pop();
	S.pop();
	printf("S.top =%d\n", S.top());
	printf("S.size =%d\n", S.size());
	return 0;
}

3.STL队列的基础知识

 队列,是先进先出的线性表,标准STL的队列包括如下6种操作,设队列Q;

  • 判断队列是否为空:Q.empty();
  • 返回队列头部元素:Q.front();
  • 返回队列尾部元素:Q.back();
  • 弹出队列头部元素:Q.pop();
  • 将元素x添加至队列:Q.push();
  • 求别存储元素的个数:Q.size(); 

 填空联系!

#include <stdio.h>
#include <queue>
int main() {
	std::queue<int> Q;
	if (Q.empty()) {
		printf("Q is empty!\n");
	}
	Q.push(5);
	Q.push(6);
	Q.push(10);
	printf("Q.front = %d\n", Q.front());
	Q.pop();
	Q.pop();
	printf("Q.fromt =%d \n", Q.front());
	Q.push(1);
	Q.back();
	printf("Q.back =%d \n", Q.back());
	printf("Q.size =%d \n", Q.size());
	return 0;
}

 

猜你喜欢

转载自blog.csdn.net/qq_37791134/article/details/80895670