【数据结构】队列的出队和入队操作
来源:互联网 发布:淘宝订单物流查询 编辑:程序博客网 时间:2024/04/30 02:42
队列的操作规则是先进先出,要注意一下,
1.队列为空
2.队列只有一个元素,即头尾指针都指向空
3.初始化队列时,分配空间后不要忘记将头为指针置空
// 13_4.cpp : Defines the entry point for the console application.//#include "stdafx.h"#include <string.h>#include <conio.h>#include <stdio.h>#include <iostream>using namespace std;typedef struct student{int data;struct student *next;}node;typedef struct linkqueue{node *first, *rear;}queue;queue *insert(queue *HQ, int x){node *p = (node *)malloc(sizeof(node));p->data = x;p->next = NULL;if (NULL == HQ->rear){HQ->first = p;HQ->rear = p;}else{HQ->rear->next = p;HQ->rear = p;}cout << HQ->rear->data << endl;return HQ;}queue *del(queue *HQ){node *p;int x;if (NULL == HQ){cout << "Queue is null!" << endl;}else{p = HQ->first;x = HQ->first->data;if (HQ->first == HQ->rear){HQ->rear = NULL;HQ->rear = NULL;free(p);}else{HQ->first = HQ->first->next;free(p);}cout << x << endl;}return HQ;}int _tmain(int argc, _TCHAR* argv[]){linkqueue *seq = (linkqueue *)malloc(sizeof(linkqueue));seq->rear = NULL;seq->first = NULL;cout << "The inserted seq is: \n" << endl;for (int i = 0; i < 10; i++){seq = insert(seq, i);}cout << "The deleted seq is: \n" << endl;for (int i = 0; i < 10; i++){seq = del(seq);}return 0;}
输出:
The inserted seq is:0123456789The deleted seq is:0123456789请按任意键继续. . .
0 0
- 【数据结构】队列的出队和入队操作
- 队列的入队和出队操作
- 队列的出队/入队的操作
- 队列的入队、出队操作实现
- 队列的入队/出队操作
- 队列的入队、出队操作
- 队列的入队、出队基本操作
- 队列的入队出队操作
- 链式队列的入队出队操作
- 队列操作--出队入队
- 队列的入队和出队
- 数据结构之队列的基本操作入队出队初始化删除-c++代码实现
- 队列的创建 入队出队 Java数据结构与算法
- 链队列的初始化、入队、出队及打印(数据结构)
- 数据结构 队列入队,出队编程的例子
- 编程实现顺序队列的入队操作和出队操作,并将出队结果输出
- 队列的入队,出队,测长,打印操作
- 队列的入队,出队,测长,打印操作 .
- Android 异步加载解决方案
- Apple Swift编程语言入门教程
- Apple Swift编程语言入门教程
- emcv/opencv 移植到DM647/DM648
- Struts2环境搭建
- 【数据结构】队列的出队和入队操作
- 第15周-项目1-工资数的输入-文件
- 浏览器查看cache
- CSS3/jQuery自定义弹出窗口
- xmppframework开发基础
- Parcelable与Serializable
- Mysql复制表结构、表数据
- 全栈工程师就是一棵歪脖子树
- MFC线程创建以及利用线程显示字符