-
Notifications
You must be signed in to change notification settings - Fork 0
/
queue.cpp
51 lines (47 loc) · 798 Bytes
/
queue.cpp
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
#include <iostream>
using namespace std ;
class Node {
public :
int value ;
Node * next ;
Node (int value){
this -> value = value ;
next = nullptr;
}
};
class Queue {
private :
Node * first ;
Node * last ;
int length = 0 ;
Queue (int value) {
Node * Newnode = new Node (value);
first = Newnode ;
last = Newnode ;
length ++;
}
void Enqueue (int value) {
Node * Newnode = new Node (value);
if (length == 0) {
first = Newnode;
last = Newnode ;
} else {
last -> next = Newnode ;
last = Newnode ;
}
length++;
}
void Dequeue () {
if (length == 0) return;
Node * temp = first ;
if (length == 1){
first = nullptr;
last = nullptr;
} else {
first = first -> next ;
}
delete temp ;
length --;
return ;
}
}; // Lara H. A B Y