adding cs235
This commit is contained in:
@@ -0,0 +1,60 @@
|
||||
#include "deque.h"
|
||||
|
||||
bool deque::addToDequeLeft(int id) {
|
||||
if(in_deque(id)) {
|
||||
return false;
|
||||
}
|
||||
l.insertHead(id);
|
||||
return true;
|
||||
}
|
||||
|
||||
bool deque::addToDequeRight(int id) {
|
||||
if(in_deque(id)) {
|
||||
return false;
|
||||
}
|
||||
l.insertTail(id);
|
||||
return true;
|
||||
}
|
||||
|
||||
int deque::removeFromDequeLeft() {
|
||||
int id = l.at(l.size() - 1);
|
||||
l.remove(id);
|
||||
return true;
|
||||
}
|
||||
|
||||
int deque::removeFromDequeRight() {
|
||||
int id = l.at(0);
|
||||
l.remove(id);
|
||||
return false;
|
||||
}
|
||||
|
||||
int deque::showTopOfDequeLeft() {
|
||||
if(l.size() == 0) {
|
||||
return -1;
|
||||
}
|
||||
int left = l.at(l.size() - 1);
|
||||
return left;
|
||||
}
|
||||
|
||||
int deque::showTopOfDequeRight() {
|
||||
if(l.size() == 0) {
|
||||
return -1;
|
||||
}
|
||||
int right = l.at(0);
|
||||
return right;
|
||||
}
|
||||
|
||||
int deque::showSizeOfDeque() {
|
||||
return l.size();
|
||||
}
|
||||
|
||||
bool deque::in_deque(int id) {
|
||||
node* node_ptr = l.head;
|
||||
while(node_ptr != NULL) {
|
||||
if(node_ptr->id == id) {
|
||||
return true;
|
||||
}
|
||||
node_ptr = node_ptr->next;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
Reference in New Issue
Block a user