C++在结构(Struct)中使用队列(Queue)

1.结构中实现队列功能:


//队列数据
struct QueueData{
    int data;//数据
    QueueData *next;//下一个数据
};

//队列结构
struct QueueStruct{
    QueueData *front;//队头,出队用
    QueueData *end;//队尾,入队用
    //构造队列
    QueueStruct(){
        front=end=NULL;
    }
    
    //空队
    bool Empty(){return front==NULL;}
    
    //入队
    void EnQueue(int v){
        //构造入队数据
        QueueData *d = new QueueData;
        d->data=v;
        d->next=nullptr;
        printf("入队:%d\n",d->data);
        //空队
        if (Empty()) {
            front=end=d;//队头队尾同时指向入队数据
            return;
        }
        //队尾指针指向入队数据
        end->next = d;
        end=d;
    }
    
    //出队
    int DeQueue(){
        if(Empty()){
            perror("==========空队列==========\n");
            return -1;
        }
        int v &

你可能感兴趣的:(C++,c++,算法,数据结构)