zoukankan      html  css  js  c++  java
  • c语言实现基本的数据结构(四) 循环队列

    #include <stdio.h>
    #include <tchar.h>
    #include <stdlib.h>
    
    #define MaxQueueSize 100
    // TODO:  在此处引用程序需要的其他头文件
    
    struct Queue
    {
        int* base;
        int front;//队头指针
        int rear;//队尾指针
    };
    //初始化队列
    bool Init_Queue(Queue* q){
        q->base = (int*)malloc(MaxQueueSize*sizeof(int));
        if (!q->base) return false;
        q->front = q->rear = 0;
        return true;
    }
    //销毁队列
    bool Destroy_Queue(Queue* q){
        free(q);
        return true;
    }
    //清空队列
    bool Clear_Queue(Queue* q){
        q->front = q->rear = 0;
        return true;
    }
    //入队
    bool EnQueue(Queue* q, int value){
        if ((q->rear + 1) % MaxQueueSize == q->front) return false;
        q->base[q->rear] = value;
        q->rear++;
        return true;
    }
    //出队
    int DeQueue(Queue* q){
        if (q->rear == q->front) exit(EXIT_FAILURE);
        q->front++;
        return q->base[q->front - 1];
    }
    //打印队列
    void Print_Queue(Queue q){
        if (q.rear == q.front) printf("空队列
    ");
        while (q.rear != q.front){
            printf("%d->", q.base[q.front]);
            q.front++;
        }
        printf("
    ");
    }
  • 相关阅读:
    set命令_Linux
    AngularJS的date 过滤器
    JMeter环境介绍
    JMeter测试计划要素
    HTTP协议的压缩及URL Encode
    fiddler配置及使用教程
    Slenium常用方法
    Selenium八大定位
    CSS实现上下左右垂直居中
    SASS用法笔记
  • 原文地址:https://www.cnblogs.com/xin1998/p/7745291.html
Copyright © 2011-2022 走看看