Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/usr/bin/env python
- class Elem(object):
- def __init__(self, value, next=None):
- self.value = value
- self.next = next
- def __str___(self):
- return self.value.__str__()
- def __repr__(self):
- return self.value.__repr__()
- class SList(object):
- def __init__(self, l=None):
- self.root = Elem(None)
- if l is not None:
- for elem in l:
- self.add(elem)
- def add(self, value):
- cur = self.root
- while cur.next is not None:
- cur = cur.next
- cur.next = Elem(value)
- def __str__(self):
- return self.__repr__()
- def __repr__(self):
- cur = self.root
- s = ""
- while True:
- cur = cur.next
- if cur is None:
- break
- s = str(cur).join((s, ", "))
- return ''.join(("List: [", s[:-2], "]"))
- def rev(self):
- cur = self.root.next
- left = None
- while True:
- if cur is None:
- break
- right = cur.next
- cur.next = left
- left = cur
- cur = right
- self.root.next = left
- l = SList((0, 1,2,3,4,5))
- print l
- l.rev()
- print l
Advertisement
Add Comment
Please, Sign In to add comment