美文网首页
4.1 栈与队列

4.1 栈与队列

作者: 月影追猎者 | 来源:发表于2020-07-11 07:34 被阅读0次

栈是受限序列,只能在栈顶插入或删除
栈属于序列的特例,故可直接基于向量或列表派生

template <typename T> class Stack public Vector<T> { // 由向量派生的栈模板类
public: // size()、empty()及其它开放接口均可直接沿用
    void push(T const & e) { // 入栈
        insert(size(), e);
    }
    T pop() { // 出栈
        return remove(size() - 1);
    }
    T & top() { // 取顶
        return (*this)[size() -1];
    }
}

队列是受限序列,只能在队尾插入(查询)enqueue() + rear(),只能在队首删除(查询)dequeue() + front()
队列属于序列的特例,亦可直接基于向量或列表派生

template <typename T> class Queue: public List<T> { // 由列表派生的队列模板类
public: // size()与empty()直接沿用
    void enqueue(T const & e) { // 入队
        insertAsLast(e);
    }
    T dequeue() { // 出队
        return remove(first());
    }
    T & front() { // 队首
        return first() -> data;
    }

相关文章

  • 4.1 栈与队列

    栈是受限序列,只能在栈顶插入或删除栈属于序列的特例,故可直接基于向量或列表派生 队列是受限序列,只能在队尾插入(查...

  • Swift 队列&栈 相关操作

    栈 LIFO(后进先出) 队列 FIFO(先进先出) 队列与栈相互的实现 栈 - 队列实现 队列 - 栈实现 相关...

  • java线程

    [TOC] 4 运行原理 4.1 栈与栈帧 Java Virtual Machine Stacks (Java ...

  • 数据结构学习 | 队列和栈

    栈 后进先出 栈顶允许插入(压栈)、删除(弹栈) 应用:数制转换数制转换与栈 队列 先进先出 队列头部允许删除,队...

  • Algorithm小白入门 -- 队列和栈

    队列和栈队列实现栈、栈实现队列单调栈单调队列运用栈去重 1. 队列实现栈、栈实现队列 队列是一种先进先出的数据结构...

  • 常见数据结构

    栈、队列、数组、链表、树、哈希表 栈 与 队列 首先我们需要了解【栈】与【列队】的区别,它们的最大区别就是数据进出...

  • 栈和队列

    用栈定义队列(出入栈) 用队列定义栈(数据队列和辅助队列)

  • LeetCode刷题笔记(三)栈与队列

    三. 栈与队列 python中的栈直接用list实现,队列用deque,需要导入外部包。 155. 最小栈 题目:...

  • 实 验 四 栈和队列

    一、实验目的与要求:## 1、理解栈和队列抽象数据类型。 2、掌握栈和队列的存储结构和操作实现。 3、理解栈和队列...

  • 数据结构的各种代码

    第 02 章 线性表 顺序存储结构 链式存储结构 第 03 章 栈与队列 顺序栈 链栈 两栈共享空间 循环队列 链...

网友评论

      本文标题:4.1 栈与队列

      本文链接:https://www.haomeiwen.com/subject/vndbcktx.html