1. 程式人生 > >python數據結構之雙隊列(二)

python數據結構之雙隊列(二)

self for __init__ pri solid pen odin __name__ urn

書接上文,雙端隊列區別於單隊列為:雙端隊列可以對隊列頭和尾部同時進行操作,單隊列不行

#coding:utf-8
class DoubleQueue(object):
    def __init__(self):
        self.list=[]
    def empty(self):
        return self.list==[]
    def queue_front(self,item):
        #頭部添加
        self.list.insert(0,item)
    def queue(self,item):
        #正常添加
         self.list.append(item)
    
def remove_queuefornt(self):
        #正常刪除
        return self.list.pop(0)

    def remove_end(self):
        """從隊尾刪除元素"""
        return self.list.pop()
    def size(self):
        return len(self.list)

if __name__=="__main__":
    s=DoubleQueue()
    s.queue_front(1)
    s.queue_front(2)
    s.queue(
3) s.queue(4) print(s.remove_queuefornt()) print(s.remove_queuefornt()) print(s.remove_end()) print(s.remove_end())

python數據結構之雙隊列(二)