zoukankan      html  css  js  c++  java
  • 简单的顺序队列

    #include<stdio.h>
    #include<malloc.h>
    #define max 100
    typedef struct node
    {
    int queue[max];
    int front,rear;
    }q,*queue;
    void init(queue p)
    {
    p->front=-1;
    p->rear=-1;
    }

    int empty(queue p)
    {
    if(p->front==p->rear)
    {
    printf("队列为空 ");
    return 1;
    }
    else
    {
    return 0;
    }
    }

    int insert(queue p,int x)
    {
    if(p->rear==max)
    {
    printf("队列已满 ");
    }
    else
    {
    p->queue[p->rear++]=x;
    }
    return 1;
    }


    int del(queue p,int *n)
    {
    if(p->front==p->rear)
    {
    printf("队列已空 ");
    }
    else
    {
    *n=p->queue[p->front++];
    printf("被删除元素:%d ",*n);
    printf(" ");
    }
    return 1;
    }

    void tra(queue p)
    {
    for(int i=p->front;i<p->rear;i++)
    {
    printf("%d ",p->queue[i]);
    }
    }

    int main()
    {//动态内存,所以指针指向数组的内存没有执行立即被分配
    queue l;int n;
    l=(queue)malloc(sizeof(q));
    init(l);
    insert(l,1);
    insert(l,2);
    insert(l,3);
    insert(l,4);
    insert(l,5);
    tra(l);
    printf(" ");
    empty(l);
    del(l,&n);
    tra(l);


    }

  • 相关阅读:
    php上传excle文件,csv文件解析为二维数组
    transition的使用
    数组
    快捷键
    SCSS历史介绍与配置
    18-async函数
    this的指向问题
    媒体查询
    13-Set和Map数据结构
    15-Iterator和for…of循环
  • 原文地址:https://www.cnblogs.com/mykonons/p/5870448.html
Copyright © 2011-2022 走看看