-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathQueueArray.java
More file actions
59 lines (43 loc) · 1.13 KB
/
QueueArray.java
File metadata and controls
59 lines (43 loc) · 1.13 KB
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
public class QueueArray {
Object[] arr;
int count;
QueueArray(int size) {
arr = new Object[size];
count = 0;
}
public boolean isEmpty() {
return count == 0;
}
public boolean isFull() {
return count == arr.length;
}
public boolean enqueue (Object value) {
if (isFull())
return false;
arr[count++] = value;
return true;
}
public boolean dequeue () {
if (isEmpty())
return false;
for (int i = 0; i < count - 1; i++) {
arr[i] = arr[i+1];
}
arr[--count] = null;
return true;
}
public Object front() {
if (isEmpty())
return null;
return arr[0];
}
public String toString () {
StringBuilder output = new StringBuilder();
if (isEmpty())
return "Queue is empty..";
for (int i = 0; i < count; i++) {
output.append("[" + arr[i] + "]" + "\n");
}
return output.toString();
}
}