본문 바로가기
알고리즘

Queue C++

by 안선생 2022. 11. 7.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
#include<iostream>
using namespace std;
 
class Queue
{
private:
    int size;
    int front;
    int rear;
    int* q;
public:
    Queue()
    {
        size = 10;
        front = rear = -1;
        q = new int[size];
    }
    Queue(int size)
    {
        this->size = size;
        front = rear = -1;
        q = new int[this->size];
    }
    void enqueue(int x);
    int dequeue();
    void Display();
};
 
void Queue::enqueue(int x)
{
    if (rear == size - 1)
        cout << "full queue";
    else
    {
        q[++rear] = x;
    }
}
 
int Queue::dequeue()
{
    int x = -1;
    if (front == rear)
        cout << "empty";
    else
    {
        x = q[++front];
    }
    return x;
}
 
void Queue::Display()
{
    for (int i = front + 1; i <= rear; i++)
    {
        cout << q[i] << " ";
    }
}
 
 
int main()
{
    Queue q(5);
    q.enqueue(1);
    q.enqueue(2);
    q.enqueue(3);
    cout << q.dequeue();
    q.Display();
    return 0;
}
cs

'알고리즘' 카테고리의 다른 글

tree  (0) 2022.11.16
link Queue  (0) 2022.11.07
Queue  (0) 2022.11.07
Link stack 최종  (0) 2022.10.30
Link stack C++  (0) 2022.10.30