# Implementation of the Queue ADT using a linked list. class Queue : def __init__( self ): '''Create an empty queue. The queue need three attributes _qhead _qtail _count ''' pass def __str__( self ): '''Build and return a string representaiton of the queue''' pass def is_empty( self ): '''Return True if the queue is empty''' pass def __len__( self ): '''Return the number of items in the queue.''' pass def enqueue( self, item ): '''Create a queue node with item as its data, then add the given item to the queue. ''' pass def dequeue( self ): '''Remove and return the first item in the queue. ''' pass # def peek( self ): '''Return the data of the first node without removing it ''' pass # Private storage class for creating the linked list nodes. class _QueueNode( object ): def __init__( self, item ): self.item = item self.next = None