数据结构学习三:队列
来源:互联网 发布:拼音输入法的编程语言 编辑:程序博客网 时间:2024/05/21 14:41
队列
队列的基本操作有1,:Enqueue(入队),它是在表的末端即队尾rear插入一个元素;2:Dequeue(出队),它是删除在表头即队头(front)的元素。
#pragma once#include"node.h"class MyQueue{private:Node* m_Head;Node* m_Front;Node* m_Rear;public:MyQueue();~MyQueue();public:bool IsEmpty();void Enqueue(int data);void Dequeue();void ShowQueue();private:void initialize();};
#include "stdafx.h"#include "MyQueue.h"MyQueue::MyQueue(){initialize();}MyQueue::~MyQueue(){}bool MyQueue::IsEmpty(){if (m_Front == NULL || m_Rear == NULL || m_Head->Next == NULL){return true;}return false;}void MyQueue::Enqueue(int data){Node* p = new Node();p->Data = data;p->Next = NULL;Node* q = m_Rear;q->Next = p;m_Rear = p;if (q == m_Head){m_Front = p;}}void MyQueue::Dequeue(){if (IsEmpty()){return;}Node* p = m_Head;Node* q = m_Front;p->Next = q->Next;m_Front = q->Next;delete q;}void MyQueue::ShowQueue(){if (IsEmpty()){cout << "this queue is empty!" << endl;return;}cout << "this queue is (front to rear):" << endl;Node* p = m_Front;while (p!=NULL){cout << p->Data << " ";p = p->Next;}cout << endl;}void MyQueue::initialize(){m_Head = new Node();m_Head->Next = NULL;m_Front = m_Rear = m_Head;}
0 0
- 数据结构学习三:队列
- 数据结构学习 栈与队列(三)
- (三)Android数据结构学习之队列
- 数据结构(三)---队列:
- 严蔚敏数据结构学习笔记三.栈和队列
- 数据结构学习三(一个简单的队列实现)
- 学习JavaScript数据结构与算法(三)——队列
- 数据结构学习之队列
- 数据结构学习笔记--队列
- 数据结构学习之队列
- 数据结构学习--队列
- 数据结构学习之队列
- 数据结构再学习--队列
- 数据结构学习四 队列
- 数据结构学习笔记--队列
- 数据结构学习笔记--队列
- 数据结构之队列学习
- 数据结构之队列(三)
- [51nod 1203]JZPLCM
- 计算机语言 笔记
- V4L2驱动简单分析一
- 2016-12-12学习内容
- 初识android动画(1)之帧动画
- 数据结构学习三:队列
- 最长递增子序列系列的两种写法
- jdbc学习:操作元数据,以及ORM框架基础
- STM32学习6
- JR-01
- rabbitmq在线安装
- 哈弗曼编码C语言
- 按字母序的升序显示单词《梁勇2011java语言程序设计基础篇》22章java集合框架编程练习题22.5
- zurmo实操安装(Windows)