类实现只Queue

来源:互联网 发布:人脸识别是人工智能吗 编辑:程序博客网 时间:2024/05/16 17:03
#include <stdio.h>class Node{public:    Node* pre;    int num;    Node* next;    Node()    {        pre=NULL;        next=NULL;    }    Node(int num):num(num)    {        pre=NULL;        next=NULL;    }    ~Node()    {    }};class LinkedList{public:    Node* phead;    LinkedList()    {        phead=new Node();    }    ~LinkedList()    {    }    void Add(int num)    {        Node* pcur=phead;        while(pcur->next!=NULL)        {            pcur=pcur->next;        }        Node* pnew=new Node(num);        pnew->pre=pcur;        pcur->next=pnew;    }    void Add(int num,int index)    {        Node* pcur=phead;        int i=0;        while(pcur->next!=NULL&&i<index)        {            pcur=pcur->next;            i++;        }        Node* pnew=new Node(num);        pnew->pre=pcur;        pnew->next=pcur->next;        pcur->next->pre=pnew;        pcur->next=pnew;    }    int Remove(int index)    {        Node* pcur=phead;        int i=0;        while(pcur->next!=NULL&&i<=index)        {            pcur=pcur->next;            i++;        }        if(pcur!=NULL&&pcur->pre!=NULL) pcur->pre->next=pcur->next;        if(pcur!=NULL&&pcur->next!=NULL) pcur->next->pre=pcur->pre;        int temp=pcur->num;        delete pcur;        return temp;    }    int GetElement(int index)    {        Node* pcur=phead;        int i=0;        while(pcur->next!=NULL&&i<=index)        {            pcur=pcur->next;            i++;        }        return pcur->num;    }    int GetSize()    {        int i=0;        Node* pcur=phead;        while(pcur->next!=NULL)        {pcur=pcur->next;            i++;        }        return i;    }};class Queue:public LinkedList{public:    void AddLast(int num)    {        Add(num);    }    int RemoveFirst()    {        return Remove(0);    }};int main(){    Queue q;    q.AddLast(1);    q.AddLast(2);    q.AddLast(3);    q.AddLast(4);    q.AddLast(5);    q.AddLast(6);    while(q.GetSize()>0)    {        printf("%d\n",q.RemoveFirst());    }    return 0;}

原创粉丝点击