c++ template Queue
#pragma once
#include <iostream>
#include <iomanip>
using namespace std;
template<class T>
class Queue
{
struct Node
{
T a;
Node *next;
};
public:
Queue();
void push(T b);
void pop();
int getlength();
virtual void print();
private:
Node *head;
Node *rear;
};
template<class T>
void Queue<T>::push(T b)
{
Node *p1 = new Node;
p1->a = b;
p1->next = NULL;
rear->next = p1;
rear = p1;
head->a++;
cout << setw(2) << b << setw(2) << "进入队列" << endl;
}
template<class T>
void Queue<T>::pop()
{
Node *p;
p = head->next;
cout << " " << setw(2) << p->a << setw(2) << "出队" << endl;
head->next = p->next;
delete p;
head->a--;
}
template<class T>
int Queue<T>::getlength()
{
return head->a;
}
template<class T>
void Queue<T>::print()
{
Node *p;
p = head->next;
cout << "队列中的元素" << endl;
while (p)
{
cout << p->a << "->";
p = p->next;
}
cout << "NULL" << endl;
}
template<class T>
Queue<T>::Queue()
{
rear = head = new Node();
}
c++ template Queue的更多相关文章
- c++ freelockquque
http://www.boost.org/doc/libs/1_56_0/doc/html/boost/lockfree/queue.html Class template queue boost:: ...
- SpringBoot2.1.0 application.properties配置
# =================================================================== # COMMON SPRING BOOT PROPERTIE ...
- 【spring boot】application.properties官方完整文档
官方地址: https://docs.spring.io/spring-boot/docs/current-SNAPSHOT/reference/htmlsingle/ 进入搜索: Appendice ...
- C++ std::queue
std::queue template <class T, class Container = deque<T> > class queue; FIFO queue queue ...
- [ACM训练] 算法初级 之 数据结构 之 栈stack+队列queue (基础+进阶+POJ 1338+2442+1442)
再次面对像栈和队列这样的相当基础的数据结构的学习,应该从多个方面,多维度去学习. 首先,这两个数据结构都是比较常用的,在标准库中都有对应的结构能够直接使用,所以第一个阶段应该是先学习直接来使用,下一个 ...
- [C++][数据结构]队列(queue)的实现
对于队列的定义,前人之述备矣. 队列的实现方法与栈非常相似.我直接在我实现的那个栈的代码上加了一点东西,全局替换了一些标识符,就实现了这个队列. 我实现的是一个queue<value>容器 ...
- STL容器适配器 stack, queue
stack是一种后进先出(last in first out)的数据结构.它只有一个出口,如图所示.stack允许新增元素,删除元素,取得最顶端元素.但除了最顶端外,没有其他任何地方可以存储stack ...
- member template
1.当且仅当类模板的参数相同时,你才能对类实体对象相互赋值,即将一个实体对象整体赋值给另外一个实体对象.不能将一种类型的实体对象赋值给另外一种实体对象.如: Stack<int> intS ...
- [c++] STL = Standard Template Library
How many people give up, because of YOU. Continue... 先实践,最后需要总结. 1. 数据流中的数据按照一定的格式<T>提取 ------ ...
随机推荐
- ZZNUOJ-2157: 水滴来袭-【干扰阅读-卡模糊精度1e-8的问题】
ZZNUOJ-2157: 水滴来袭 那是一个冷雨霏霏的秋天的下午,当罗辑拿着枪威胁三体文明的时候,如果过了三十秒三体人还没有同他展开谈判,罗辑就会扣动扳机即刻结束自己的生命,随后他身上的核弹控制器就会 ...
- 0003SpringBoot整合SpringDataJPA
SpringBoot整合SpringDataJpa步骤如下: 1.添加data-jpa起步依赖(pom.xml) 2.添加数据库驱动坐标.添加Junit起步依赖(pom.xml) 3.添加数据库连接信 ...
- 用python计算最高投标限价
题目是文绉绉的说法,背景来于群里提问,是一份文件里面关于最高投标限价的确定. 最高投标限价下浮率在开标前在开标现场采取逐标段摇珠方式确定,摇珠操作办法如下:在下浮率摇珠范围内,以0.1%为以一档次增序 ...
- Selenium(七)多窗口切换、等待方法、alert对话框处理
一.多窗口切换 1.打开百度首页 2.在百度中搜索博客园 3.从搜索结果中跳转到博客园 4.博客园首页和百度搜索页面切换 handle:句柄 二.等待方法 time.sleep(5) 先导入方法 参数 ...
- ip_srcroute函数
当响应某个分组时,I C M P和标准的运输层协议必须把分组带的任意源路由逆转.逆转源路由是通过i p _ s r c r o u t e保存的路由构造的. 7 7 7 - 7 8 3 i p _ s ...
- 修改HTTPS加密协议TLS1.0为TLS1.2
一:首先为什么要改为TLS1.2 因为各大浏览器相继发布声明将停止支持 TLS 1.0 和 TLS 1.1 https://www.cnblogs.com/jpush88/p/9846047.html ...
- 删除集合元素Collection ,remove()
package seday11;/*** @author xingsir*/public class coordinate { private int x; private int y; /* * 右 ...
- IntelliJ IDEA必装插件以及SpringBoot使用小技巧合集
IntelliJ IDEA必装插件 有不知道怎么安装的吗?File-->settings打开设置面板,找到plugins,输入想要安装的插件回车即可 1.背景图片 目前,IDEA支持设置背景图片 ...
- C语言学习系列(四)C语言基本语法和数据类型
一.基本语法 C的令牌(Tokens) C 程序由各种令牌组成,令牌可以是关键字.标识符.常量.字符串值,或者是一个符号. 关键字(保留字) auto else long switch break e ...
- 将pandas的DataFrame数据写入MySQL数据库 + sqlalchemy
将pandas的DataFrame数据写入MySQL数据库 + sqlalchemy import pandas as pd from sqlalchemy import create_engine ...