class Deque:

	def __init__(self):
		self.dq = UnorderedList()

	def add_rear(self,item):
		self.dq.add(item)

	def add_front(self,item):
		self.dq.append(item)

	def remove_rear(self):
		return self.dq.pop(0)

	def remove_front(self):
		return self.dq.pop()

	def size(self):
		return self.dq.size()

	def is_empty(self):
		return self.dq.is_empty()

	def show(self):
		print(self.dq)
class Queue:

	def __init__(self):
		self.q = UnorderedList()

	def enque(self,items):
		self.q.add(items)

	def deque(self):
		return self.q.pop()

	def size(self):
		return self.q.size()

	def is_empty(self):
		return self.q.is_empty()

	def show(self):
		print(self.q)
Example #3
0
class Stack:
    def __init__(self):
        self.s = UnorderedList()

    def push(self, items):
        self.s.add(items)

    def pop_stack(self):
        return self.s.pop(0)

    def peek_stack(self):
        return self.s.head.get_data()

    def is_empty(self):
        return self.s.is_empty()

    def size(self):
        return self.s.size()

    def show(self):
        print(self.s)
Example #4
0
class Deque:
    def __init__(self):
        self.dq = UnorderedList()

    def add_rear(self, item):
        self.dq.add(item)

    def add_front(self, item):
        self.dq.append(item)

    def remove_rear(self):
        return self.dq.pop(0)

    def remove_front(self):
        return self.dq.pop()

    def size(self):
        return self.dq.size()

    def is_empty(self):
        return self.dq.is_empty()

    def show(self):
        print(self.dq)
Example #5
0
 def test_remove_with_one_element(self):
     L = UnorderedList()
     L.add(3)
     L.remove(3)
     self.assertNotIn(3, self.get_data(L))
     self.assertEqual(L.size(), 0)
Example #6
0
 def test_size(self):
     L = UnorderedList()
     for i in range(10):
         L.add(i)
     self.assertEqual(L.size(), 10)