interactive-coding-challenges/stacks_queues/stack/stack.py
2015-07-02 23:06:52 -04:00

30 lines
628 B
Python

class Node(object):
def __init__(self, data):
self.data = data
self.next = None
class Stack(object):
def __init__(self, top=None):
self.top = top
def push(self, data):
node = Node(data)
node.next = self.top
self.top = node
def pop(self):
if self.top is not None:
data = self.top.data
self.top = self.top.next
return data
return None
def peek(self):
if self.top is not None:
return self.top.data
return None
def is_empty(self):
return self.peek() is None