编程实现队列的入队/出队操作

本文介绍了如何使用C++编程实现队列的基本操作,包括创建队列、入队、出队和打印队列内容。通过示例代码展示了如何动态地管理队列节点,并提供了主函数进行测试。
摘要由CSDN通过智能技术生成
// DataStructure.cpp : 定义控制台应用程序的入口点。
//

#include "stdafx.h"

typedef struct Student
{
	int data;
	Student *next;
}Node;

typedef struct
{
	Node *head;
	Node *tail;
}Queue;

Queue * create(int *data,int length){
	if (data==NULL||length<=0)
	{
		return NULL;
	}

	Queue *queue=new Queue();
	queue->head=NULL;
	queue->tail=NULL;
	for (int i = 0; i < length; i++)
	{
		Node *node=new Node();
		node->data=data[i];
		node->next=NULL;
		if (queue->head==NULL)
		{
			queue->head=node;
		}
		else
		{
			queue->tail->next=node;
		}
		queue->tail=node;
	}

	return queue;
}

Node *dequeue(Queue *queue){
	if (queue==NULL||queue->head==NULL)
	{
		return NULL;
	}

	Node **head=&(queue->head);
	Node *p=NULL;
	if (*head!=NULL)
	{
		p=*head;
		*head=(*head)->next;
		//只有一个元素
		if (*head==NULL)
		{
			queue->
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值