This repository has been archived by the owner on Apr 15, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
/
TheQueue.java
135 lines (80 loc) · 2.14 KB
/
TheQueue.java
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
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
import java.util.Arrays;
// Queues and Priority Queues implemented with classes
public class TheQueue {
private String[] queueArray;
private int queueSize;
private int front,rear;
private int numItems;
public TheQueue(int size) {
queueSize = size;
queueArray = new String[size];
Arrays.fill(queueArray, " ");
}
public void insert(String input) {
if(numItems + 1 <= queueSize) {
queueArray[rear] = input;
rear++;
numItems++;
displayQueue();
System.out.println();
System.out.println(input+" was added to the queue");
}
else
System.out.println("Queue is full");
}
public void delete() {
if(numItems>0) {
System.out.println(queueArray[front]+" was deleted from the queue");
queueArray[front] = " ";
front++;
numItems--;
}
else
System.out.println("Queue is empty");
}
public void peek() {
System.out.println("Peeking the front element, which is "+queueArray[front]);
}
public void displayQueue() {
System.out.println();
System.out.println();
for(int i=0;i<queueSize;i++)
System.out.print(i+" | ");
System.out.println();
for(int i=0;i<queueArray.length;i++)
System.out.print(queueArray[i]+" | ");
System.out.println();
if(!queueArray[front].equals(" ") && !queueArray[rear].equals(" ")) {
System.out.println(queueArray[front]+" is Front");
System.out.println(queueArray[rear]+" is Rear");
}
}
public void priorityInsert(String input) {
int i;
if(numItems == 0)
insert(input);
else {
for(i=numItems-1;i>=0;i--) {
if(Integer.parseInt(input) > Integer.parseInt(queueArray[i]))
queueArray[i+1] = queueArray[i];
else
break;
}
queueArray[i+1] = input;
rear++;
numItems++;
}
}
public static void main(String[] args) {
TheQueue queue = new TheQueue(10);
queue.displayQueue();
System.out.println();
queue.priorityInsert("1");
queue.priorityInsert("9");
queue.priorityInsert("0");
queue.priorityInsert("4");
queue.displayQueue();
queue.delete();
queue.displayQueue();
}
}