#includeusing namespace std;typedef int ElemType;struct Node{ ElemType date; Node *next;};struct LinkQueue{ Node *front ,*rear; void Init(); void Clear(); bool Empty(); ElemType GetTop(); void EnQueue(ElemType e); void DeQueue(); };void LinkQueue::Init(){ front=rear=new Node(); rear->next==NULL; }void LinkQueue::Clear(){ front=rear;}bool LinkQueue::Empty(){ return front==rear;}ElemType LinkQueue::GetTop(){ return front->date;}void LinkQueue::EnQueue(ElemType e){ Node *p=new Node(); p->date=e; p->next=NULL; rear->next=p; rear=p;}void LinkQueue::DeQueue(){ Node *p=new Node(); if(front==rear) return; p=front->next; front->next=p->next; if(front->next==rear) front==rear; delete p;}int main(){ }