"""
-------------------------------------------------------
Implementation of Deque ADT using doubly-linked list
-------------------------------------------------------
Authors: David Brown and Masoomeh Rudafshani
I
...
"""
-------------------------------------------------------
Implementation of Deque ADT using doubly-linked list
-------------------------------------------------------
Authors: David Brown and Masoomeh Rudafshani
IDs: 999999999 and 123456789
Emails:
[email protected] and
[email protected]
Section: CP164OC
-------------------------------------------------------
"""
# pylint: disable=W0212
# Imports
from copy import deepcopy
class DNode:
def __init__(self, element):
"""
-------------------------------------------------------
Initializes a Deque node.
Use: node = DNode(value, _prev, _next)
-------------------------------------------------------
Parameters:
_data - data value for node (?)
_prev - pointer to another Deque node (DNode)
_next - pointer to another Deque node (DNode)
Returns:
a new DNode object (DNode)
-------------------------------------------------------
"""
self._data = deepcopy(element)
self._prev = None
self._next = None
class Deque:
def __init__(self):
"""
-------------------------------------------------------
Initializes an empty Deque.
Use: deque = Deque()
-------------------------------------------------------
Returns:
a new Deque object (Deque)
-------------------------------------------------------
"""
self._front = None
self._rear = None
self._count = 0
def isEmpty(self):
"""
-------------------------------------------------------
Determines if the Deque is empty.
Use: b = deque.isEmpty()
-------------------------------------------------------
Returns:
True if the deque is empty, False otherwise.
-------------------------------------------------------
"""
if self._count == 0:
b = True
else:
b = False
return b
#your code goes here
def size(self):
"""
-------------------------------------------------------
Determines the size of Deque.
Use: b = deque.size()
-------------------------------------------------------
Returns:
the number of data elements in the deque
-------------------------------------------------------
"""
return self._count
[Show More]