小魚要學數據結構(基於python)—Day3隊列

數據結構筆記(北大公開課)

隊列

下面是本課知識點概覽:
隊列知識概覽
下面是隊列的兩個應用舉例:
隊列的應用
下面是本課代碼

#實現隊列
class Queue:
    def __init__(self):
        self.items=[]
    def isEmpty(self):
        return self.items==[]
    def enqueue(self,item):
        self.items.insert(0,item)
    def dequeue(self):
        return self.items.pop()
    def size(self):
        return len(self.items)

#熱土豆問題
def hotPotato(namelist,num):
    simqueue=Queue()
    for name in namelist:
        simqueue.enqueue(name)
    while simqueue.size()>1:
        for i in range(num):
            simqueue.enqueue(simqueue.dequeue())
        simqueue.dequeue()
    return simqueue.dequeue()
print(hotPotato(['A','B','C','D','E','F','G','H','I'],7))

還未寫完:(

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章