C与C++队列实现
2024-01-08 16:57:50
C队列实现:
#include <stdio.h>
//节点
struct Node{
int data;//节点数据
Node *next;//下一节点
};
//队列
struct Queue{
Node *front;//队头
Node *end;//队尾
};
//创建节点
struct Node* createNode(int _data){
//创建节点内存
struct Node *newNode = (struct Node*)malloc(sizeof(struct Node));
newNode->data = _data;//节点数据
newNode->next = NULL;//下一节点
return newNode;//返回节点
};
//创建队列
struct Queue* createQueue(){
//分配队列内存
struct Queue *newQueue = (struct Queue*)malloc(sizeof(struct Queue));
newQueue->front = newQueue->end = NULL;//默认队头队尾为空
return newQueue;//返回队列
};
//空队判断
bool isEmpty(struct Queue *q){
return q->front == NULL;
}
//取队头数据
int front(struct Queue *q){
if (isEmpty(q)) {
printf("队列为空");
return -1;
}
return q->front->data;
}
//队列大小
int size(struct Queue *q){
int count = 0;
struct Node *cur = q->front;
文章来源:https://blog.csdn.net/fittec/article/details/135459058
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!