C++封装队列
来源:互联网 发布:php短信接口类型 编辑:程序博客网 时间:2024/06/06 02:57
对于队列的思考
队列拥有的特性和栈相反,即:栈先进后出,队列先进先出。
而与栈相同的是,栈仍然也是线性的存储结构进行存储,而与栈相同的是,需要频繁的进行入队和出队,因此仍然可以采用栈的相同方式进行类似的实现。
详细参考:C++封装栈
开始栈的封装
//// ZQueue.hpp// Array//// Created by 邹智鹏 on 16/7/4.// Copyright © 2016年 Frank. All rights reserved.//#ifndef ZQueue_hpp#define ZQueue_hpp#include "ZLinkedList.hpp"#include <stdio.h>namespace ZTemplate { template<class T> class ZQueue : protected ZLinkedList<T> { public: ZQueue<T>(); virtual ~ZQueue<T>(){} /** * 入队 * @param val 要入队的值 */ void enqueue(const T &val); /** * 出队 */ T dequeue(); /** * 队列是否空 * @return 返回是否空队列 */ bool empty() const; /** * 获取队列元素个数 * @return 返回队列中元素个数 */ z_size count() const; }; template<class T> ZQueue<T>::ZQueue() : ZLinkedList<T>() { } template<class T> void ZQueue<T>::enqueue(const T &val) { this->push_back(val); } template<class T> T ZQueue<T>::dequeue() { return this->pop(0); } template<class T> bool ZQueue<T>::empty() const { return this->isEmpty(); } template<class T> z_size ZQueue<T>::count() const { return this->_length; }}#endif /* ZQueue_hpp */
以上代码即为队列的封装。
涉及之前的类,请移步至:C++封装线性表-向量、C++封装链式表-链表、C++封装栈
Github地址:Array数据结构封装
0 0
- 纯c封装的一个队列
- 封装 队列
- 【C/C++学院】0802-链式栈/链表队列以及优先队列/封装链表库
- [封装]循环队列
- 队列的简单封装
- 队列的封装
- C++封装队列
- C++封装队列
- C#--封装
- 【C#】封装
- C 队列
- 队列(C#)
- C 队列
- C+队列
- C 队列
- 用链表(LinkedList)封装成队列
- C++封装Linux消息队列
- 【链式队列】接口的封装
- 将博客搬至CSDN
- 远程连接linux的mysql服务报错10061的解决方案
- 基于SimpleAdapter与BaseAdapter的不同ListView实现
- 【matlab】关于批量随机生成数据和批量保存运行结果
- spine 动态换皮功能
- C++封装队列
- Leetcode上List问题的总结(持续更新)
- java关键字this用法总结
- Mac下抓包工具Charles初步使用
- 红黑树--(上)
- 最长递增子序列A (完美2017实习生)
- 通过new Scanner(System.in)创建一个Scanner,命令行输出
- Android之Launcher分析和修改3——Launcher启动和初始化
- Spring注解