队列的头节点是否与其余节点一样?
队列的数据类型
typedef struct Node
{
int data;
struct Node *next //
}LinkQueueNode ;
typedef struct {
LinkQueueNode *front;
LinkQueue Node *rear ;
} LinkQueue;
初始化队列;
int InitQueue (LinkQueue *Q)
{
// 申请一个队空间使队首指针指向它;
Q->front(LinkQueueNode*)sizeof(LinkQueueNode);
if(Q->front!=NULL)
{
Q->rear=Q->front; // 队首队尾指向同一个空间,队列为空时;
Q->front->next=NULL;
return 1;
}
return 0;
}
--
一般节点的申请;
LinkQueueNode *NweNode;
//申请一个空间
NewNode =(LinkQueueNode*)malloc(sizeof(LinkQueueNode);
我想问一下链队列的头节点和,,其余节点是否是一样的结构,
我认为头节点多存储了指向头节点和尾部的指针;
但是头节点申请的空间的数据结构和普通的节点一样 ,而又传入了一个LinkQueue 型的指针.
Q->front(LinkQueueNode*)sizeof(LinkQueueNode);
那个大佬能解释一下吗?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
各个节点肯定类型都是一样的,包括头节点。
你这个LinkQueue只是相当于一个辅助对象,同时保存了头节点和尾节点,不是链表的一部分。