zoukankan      html  css  js  c++  java
  • 双端队列

     1 #include <iostream>
     2 #include <cstring>
     3 using namespace std;
     4 #define size 10
     5 struct  squeue
     6 {
     7     int queue[size];
     8     int front,rear;
     9 };
    10 void initqueue(squeue *sq)
    11 {
    12     sq->front=sq->rear=0;
    13 }
    14 int isempty(squeue *sq)
    15 {
    16     if(sq->front==sq->rear)
    17         return 1;
    18     return 0;    
    19 }
    20 int enqueue(squeue *sq,int e,int de)
    21 {
    22 
    23     if(de==0)
    24     {
    25         if(sq->front==0)
    26         {
    27             return 0;
    28         }
    29         else
    30         {
    31             sq->front--;
    32             sq->queue[sq->front]=e;
    33         }
    34     }
    35     else
    36     {
    37         if(sq->rear==size)
    38         {
    39             return 0;
    40         }
    41         else
    42         {
    43             sq->queue[sq->rear]=e;
    44             sq->rear++;
    45         }
    46     }
    47 }
    48 int ouqueue(squeue *sq,int &e,int de)
    49 {
    50     if(isempty(sq))
    51         return 0;
    52     if(de==0)
    53     {
    54         e=sq->queue[sq->front];
    55         sq->front++;
    56     }
    57     else
    58     {
    59         e=sq->queue[sq->rear-1];
    60         sq->rear--;
    61     }
    62 }
    63 int main(int argc, char const *argv[])
    64 {
    65     squeue s;
    66     initqueue(&s);
    67     int i,e;
    68     for(i=0;i<5;i++)
    69         enqueue(&s,i,1);
    70     for(i=0;i<5;i++)
    71     {
    72         ouqueue(&s,e,0);
    73         cout<<e<<' ';
    74         
    75     }
    76     cout<<endl;
    77     for(i=10;i>=6;i--)
    78     {
    79         enqueue(&s,i,0);
    80     }
    81     for(i=0;i<5;i++)
    82     {
    83         ouqueue(&s,e,1);
    84         cout<<e<<' ';
    85     }
    86     return 0;
    87 }
  • 相关阅读:
    C# 结构和类
    c# 接口
    C# 抽象类和密闭方法
    C# 虚方法、override和new
    Pullword 分词工具
    tk简单使用
    C# 值传参和引用传参
    C# 枚举类型
    vim笔记
    Git笔记
  • 原文地址:https://www.cnblogs.com/a1225234/p/4670893.html
Copyright © 2011-2022 走看看