C++之stack容器

简介: C++之stack容器

一、概念

概念: stack是一种先进后出(First In Last Out,FILO)的数据结构,它只有一个出口;

 

二、代码

#include <iostream>
#include <stack>
 
using namespace std;
 
// 栈数据操作 概念: stack是一种先进后出(First In Last Out,FILO)的数据结构,它只有一个出口;
void test01() {
    // 默认构造函数
    stack<int> v1;
    // 向栈顶添加元素
    v1.push(1);
    v1.push(2);
    v1.push(3);
    //拷贝构造函数
    stack<int> v2(v1);
    // 赋值
    stack<int> v3 = v1;
    // 判断堆栈是否为空
    cout << "v3 是否为空:" << v3.empty() << endl;
    // 返回栈大小
    cout << "v3 元素个数:" << v3.size() << endl;
    // 返回栈顶元素
    cout << v3.top() << endl;
    cout << "v3 是否为空:" << v3.empty() << endl;
    cout << "v3 元素个数:" << v3.size() << endl;
    // 从栈顶移除第一个元素
    v3.pop();
    cout << "v3 是否为空:" << v3.empty() << endl;
    cout << "v3 元素个数:" << v3.size() << endl;
}
 
int main() {
    test01();
    system("pause");
    return 0;
}
 
v3 是否为空:0
v3 元素个数:3
3
v3 是否为空:0
v3 元素个数:3
v3 是否为空:0
v3 元素个数:2
相关文章
|
2月前
|
存储 缓存 C++
C++ 容器全面剖析:掌握 STL 的奥秘,从入门到高效编程
C++ 标准模板库(STL)提供了一组功能强大的容器类,用于存储和操作数据集合。不同的容器具有独特的特性和应用场景,因此选择合适的容器对于程序的性能和代码的可读性至关重要。对于刚接触 C++ 的开发者来说,了解这些容器的基础知识以及它们的特点是迈向高效编程的重要一步。本文将详细介绍 C++ 常用的容器,包括序列容器(`std::vector`、`std::array`、`std::list`、`std::deque`)、关联容器(`std::set`、`std::map`)和无序容器(`std::unordered_set`、`std::unordered_map`),全面解析它们的特点、用法
C++ 容器全面剖析:掌握 STL 的奥秘,从入门到高效编程
|
2月前
|
设计模式 C++ 容器
c++中的Stack与Queue
c++中的Stack与Queue
|
3月前
|
C++ 容器
【c++丨STL】stack和queue的使用及模拟实现
本文介绍了STL中的两个重要容器适配器:栈(stack)和队列(queue)。容器适配器是在已有容器基础上添加新特性或功能的结构,如栈基于顺序表或链表限制操作实现。文章详细讲解了stack和queue的主要成员函数(empty、size、top/front/back、push/pop、swap),并提供了使用示例和模拟实现代码。通过这些内容,读者可以更好地理解这两种数据结构的工作原理及其实现方法。最后,作者鼓励读者点赞支持。 总结:本文深入浅出地讲解了STL中stack和queue的使用方法及其模拟实现,帮助读者掌握这两种容器适配器的特性和应用场景。
90 21
|
6月前
|
存储 搜索推荐 C++
【C++篇】深度剖析C++ STL:玩转 list 容器,解锁高效编程的秘密武器2
【C++篇】深度剖析C++ STL:玩转 list 容器,解锁高效编程的秘密武器
134 2
|
5月前
|
存储 设计模式 C++
【C++】优先级队列(容器适配器)
本文介绍了C++ STL中的线性容器及其适配器,包括栈、队列和优先队列的设计与实现。详细解析了`deque`的特点和存储结构,以及如何利用`deque`实现栈、队列和优先队列。通过自定义命名空间和类模板,展示了如何模拟实现这些容器适配器,重点讲解了优先队列的内部机制,如堆的构建与维护方法。
93 0
|
6月前
|
存储 算法 调度
【C++打怪之路Lv11】-- stack、queue和优先级队列
【C++打怪之路Lv11】-- stack、queue和优先级队列
90 1
|
6月前
|
设计模式 存储 C++
C++之stack 和 queue(下)
C++之stack 和 queue(下)
91 1
|
6月前
|
存储 C++ 容器
【C++篇】深度剖析C++ STL:玩转 list 容器,解锁高效编程的秘密武器1
【C++篇】深度剖析C++ STL:玩转 list 容器,解锁高效编程的秘密武器
108 5
|
6月前
|
存储 编译器 C++
【C++篇】揭开 C++ STL list 容器的神秘面纱:从底层设计到高效应用的全景解析(附源码)
【C++篇】揭开 C++ STL list 容器的神秘面纱:从底层设计到高效应用的全景解析(附源码)
133 2
|
6月前
|
C++ 容器
C++之stack 和 queue(上)
C++之stack 和 queue(上)
149 0

热门文章

最新文章