Toteuta luokka FlipList
, jossa on seuraavat metodit:
push_first(x)
: lisää lukux
listan alkuunpush_last(x)
: lisää lukux
listan loppuunpop_first()
: palauta ja poista alkio listan alustapop_last()
: palauta ja poista alkio listan lopustaflip()
: käännä listan sisältö
Jokaisen metodin tulee toimia ajassa O(1).
Toteuta tiedostoon fliplist.py
luokka FlipList
seuraavan mallin mukaisesti.
class FlipList: def __init__(self): # TODO def push_first(self, x): # TODO def push_last(self, x): # TODO def pop_first(self): # TODO def pop_last(self): # TODO def flip(self): # TODO if __name__ == "__main__": f = FlipList() f.push_last(1) f.push_last(2) f.push_last(3) print(f.pop_first()) # 1 f.flip() print(f.pop_first()) # 3