• 数据结构----队列


     

    1.队列定义

    static final int QUEUELEN=15;
    
    class DATA3
    {
        String name;
        int age;
    }
    
    class SQType
    {
        DATA3[] data = new DATA3[QUEUELEN];
        int head;
        int tail;
    }
    

    2.初始化队列

    SQType SQTypeInit()
    {
        SQType q;
        if((q=new SQType())!=null)
        {
            q.head=0;
            q.tail=0;
            return q;
        }
        else
        {
            return null;
        }
    }
    

    3.判断空队列

    int SQTypeIsEmpty(SQType q)
    {
        int temp=0;
        if(q.head==q.tail)    
            temp=1;
            return temp;
    }
    

    4.判断满队列

    int SQTypeIsFull(SQType q)
    {
        int temp=0;
        if(q.tail==QUEUELEN)
            temp=1;
        return temp;
    }
    

    5.清空队列

    void SQTypeClear(SQType q)
    {
        q.head=0;
        q.tail=0;
    }
    

    6.释放空间

    void SQTypeFree(SQType q)
    {
        if(q!=null)
        {
            q=null;
        }
    }
    

    7.入队列

    int InSQType(SQType q,DATA3 data)
    {
        if(q.tail==QUEUELEN)
        {
            System.out.print("队列已满!操作失败!
    ");
            return 0;
        }
        else
        {
            q.data[q.tail++]=data;                    //将元素入队列
            return 1;
        }
    }
    

    8.出队列

    DATA3 OutSQType(SQType q)
    {
        if(q.head==q.tail)
        {
            System.out.print("
    队列已空!操作失败!
    ");
            return 0;
        }
        else
        {
            return q.data[q.head++];
        }
        return null;
    }
    

    9.读结点数据

    DATA3 PeekSQType(SQType q)
    {
        if(SQTypeIsEmpty(q)==1)
        {
            System.out.print("空队列“);
            return 0;
        }
        else
        {
            return q.data[q.head];
        }
    }
    

    10.计算队列长度

    int SQTypeLen(SQType q)
    {
        int temp;
        temp=q.tail-q.head;
        return temp;
    }
    

      

      

      

      

      

      

      

      

      

  • 相关阅读:
    springaopxml
    【Cocos2dhtml5】解析例子中的飞机游戏(一)
    springiocannotation
    模板方法设计模式(JDBCTeampleta
    springaopannotation
    从前,有座山,山里有座庙,庙里有苦逼IT
    day 41 Nginx进阶
    day 42 作业
    day43 LNMP单机环境安装
    day 42 nginx rewrite跳转
  • 原文地址:https://www.cnblogs.com/mathe/p/4465430.html
Copyright © 2020-2023  润新知