链式链表

#include<iostream>
using 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()
{
    
}
原文地址:https://www.cnblogs.com/ilovetheworld/p/10610698.html