Day 162最近の操作のみ残すリングバッファをdequeで作る
Pythonコード
1from collections import deque2 3d = deque(maxlen=3)4 5d.append(1)6 7d.append(2)8 9d.append(3)10 11print(d)12 13d.append(4)14 15print(d)
解説
- 行1: collectionsモジュールからdequeをインポートしています。dequeは、両端から要素を追加または削除できるデータ構造です。from collections import dequeは、collectionsモジュールの中のdequeクラスをインポートするための組み込み関数です。
- 行3: 最大長さが3のdequeを作成しています。deque(maxlen=3)は、最大長さが3のdequeを作成するための組み込み関数です。 行5: 1をdequeに追加しています。d.append(1)は、dequeの右側に1を追加するためのメソッドです。 行7: 2をdequeに追加しています。d.append(2)は、dequeの右側に2を追加するためのメソッドです。 行9: 3をdequeに追加しています。d.append(3)は、dequeの右側に3を追加するためのメソッドです。
- 行11: 現在のdequeの状態を出力しています。print(d)は、dequeの状態を画面に表示するための組み込み関数です。 行13: 4をdequeに追加しています。d.append(4)は、dequeの右側に4を追加するためのメソッドです。最大長さは3なので、最も古い要素(1)が削除されます。 行15: 最終的なdequeの状態を出力しています。print(d)は、dequeの状態を画面に表示するための組み込み関数です。
次に試してみよう
- dequeに5を追加してみましょう
- 最大長さを5に変更してみましょう
- dequeから要素を削除してみましょう