スタック
class Stack:
def __init__(self, stack = None,max = 100):
self.max = max
if type(stack) is type([]):
self.stack = stack
elif stack is None:
self.stack = []
else:
print('Please list type!\n')
def push(self, e):
if not self.is_full():
self.stack.append(e)
return self.stack
else:
print('Stack is full!!\n')
def pop(self):
if not self.is_empty():
e = self.stack.pop()
return (e, self.stack)
else:
print('Stack is empty!!\n')
def is_empty(self):
if len(self.stack) is 0:
return True
else:
return False
def is_full(self):
if len(self.stack) is self.max:
return True
else:
return False
キュー
class Queue:
def __init__(self, queue = None, max = 100):
self.max = max
if type(queue) is type([]):
self.queue = queue
elif queue is None:
self.queue = []
else:
print('Please enter list type!\n')
def enqueue(self, e):
if not self.is_full():
self.queue.append(e)
return self.queue
else:
print('Queue is full!!\n')
def dequeue(self):
if not self.is_empty():
e = self.queue[0]
del self.queue[0]
return (e, self.queue)
else:
print('Queue is empty!!\n')
def is_empty(self):
if len(self.queue) is 0:
return True
else:
return False
def is_full(self):
if len(self.queue) is self.max:
return True
else:
return False