2017-09-26 7 views
-1

すべてのメンバーをチェックし、順序を犠牲にすることなく、繰り返し実行することなく、Pythonでキューリスト(自己実装)のチェックメンバーメソッドを実装したいと思います。キューリストの一定時間O(1)でチェックメンバメソッドを実装する方法は?

私は、次のFIFOqueue実装があります。上記のクラスに一定の時間O(1)でチェック部材のメソッドを追加することができますどのように

class FIFOqueue(object): 
"""Initialize with a list""" 
def __init__(self, elements): 
    self.list = elements 

def pop(self): 
    """Return the oldest element of the list (last index)""" 
    return self.list.pop() 

def insert(self, element): 
    """Insert a new element at the end""" 
    self.list = self.list + [element] 

を?

+1

あなたがすることはできません。だからこそ「口述」が存在するのです。 – chepner

答えて

0

O(1)の複雑さを維持したい場合は、リストを使用しないでください。特にdictを優先してください。特にOrderedDict in python 2Xは、挿入順序やpython 3.6+のスタンダードディクテーションを保持しません。 Pythonでオブジェクト上の標準的な操作のための

Here you can find time complexity

関連する問題