Advertisement
DMG

Queue - implementacija

DMG
Apr 6th, 2014
177
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.22 KB | None | 0 0
  1. class Queue:
  2.     def __init__(self):
  3.         self._red  = [None]
  4.         self._size = 0
  5.         self._head = 0
  6.  
  7.     def sizeOf(self):
  8.         return self._size
  9.  
  10.     def isEmpty(self):
  11.         if (self._size == 0):
  12.             return True
  13.         return False
  14.  
  15.     def front(self):
  16.         return self._red[self._head]
  17.  
  18.     def enQueue(self, element):
  19.         # print self._red[(self._head + self._size)%len(self._red)]
  20.         if self._red[(self._head + self._size)%len(self._red)] != None:
  21.             self.expandQueue()
  22.  
  23.         self._red[(self._head + self._size)%len(self._red)] = element
  24.         self._size += 1
  25.  
  26.     def deQueue(self):
  27.         value = self._red[self._head]
  28.         self._red[self._head] = None
  29.         self._head = (self._head + 1)%len(self._red)
  30.         self._size -= 1
  31.         return value
  32.  
  33.     def expandQueue(self):
  34.         lista = len(self._red)*2*[None]
  35.         for i in range(len(self._red)):
  36.             lista[i] = self._red[self._head]
  37.             self._head = (self._head + 1) % len(self._red)
  38.  
  39.         self._red = lista
  40.         self._head = 0
  41.  
  42.     def printQueue(self):
  43.         for i in self._red:
  44.             print str(i) + " ",
  45.         print
  46.  
  47. red = Queue()
  48.  
  49. input()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement