队列的头节点是否与其余节点一样?

队列的数据类型

    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); 

那个大佬能解释一下吗?

阅读 2.3k
1 个回答

各个节点肯定类型都是一样的,包括头节点。
你这个LinkQueue只是相当于一个辅助对象,同时保存了头节点和尾节点,不是链表的一部分。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题