Design Circular Deque LeetCode solution in JavaScript

1
class MyCircularDeque {
2
public:
3

4
deque<int> dq;
5

6
int max_size;
7

8
MyCircularDeque(int k) {
9

10
max_size = k;
11
}
12

13
bool insertFront(int value) {
14

15
if(dq.size() < max_size)
16
{
17
dq.push_front(value);
18

19
return true;
20
}
21

22
return false;
23
}
24

25
bool insertLast(int value) {
26

27
if(dq.size() < max_size)
28
{
29
dq.push_back(value);
30

31
return true;
32
}
33

34
return false;
35
}
36

37
bool deleteFront() {
38

39
if(dq.size() > 0)
40
{
41
dq.pop_front();
42

43
return true;
44
}
45

46
return false;
47
}
48

49
bool deleteLast() {
50

51
if(dq.size() > 0)
52
{
53
dq.pop_back();
54

55
return true;
56
}
57

58
return false;
59
}
60

61
int getFront() {
62

63
if(dq.size() > 0)
64
return dq.front();
65

66
return -1;
67
}
68

69
int getRear() {
70

71
if(dq.size() > 0)
72
return dq.back();
73

74
return -1;
75
}
76

77
bool isEmpty() {
78

79
return dq.empty();
80
}
81

82
bool isFull() {
83

84
return dq.size() == max_size;
85
}
86
};

0

WPM •0 •0

100%

ACC •0 •0

0s

TIME •0