Python
 Computer >> コンピューター >  >> プログラミング >> Python

Python-Deque


Pythonでは、dequeはスタックやキューのようなデータ構造です。これにより、キューの両端からの追加およびポップ操作が可能になります。そして、それは他のデータ構造とは異なります。 dequeに適用できる、以下にリストされているさまざまな操作があります。この記事では、これらの各操作の例を示します。 コレクション モジュールはdequeを実装するために使用されます。

Deque Operations

以下は、dequeを使用して実行される便利な操作の一部です

  • append() −この関数は、引数の値をdequeの右端に挿入するために使用されます。

  • appendleft() −この関数は、引数の値をdequeの左端に挿入するために使用されます。

  • pop() −この関数は、dequeの右端から引数を削除するために使用されます。

  • popleft( )−この関数は、dequeの左端から引数を削除するために使用されます。

  • 拡張(反復可能) −この関数は、両端キューの右端に複数の値を追加するために使用されます。渡された引数は反復可能です。

  • extendleft(iterable) −この関数は、両端キューの左端に複数の値を追加するために使用されます。渡された引数は反復可能です。左の追加の結果、順序が逆になります。

  • reverse() −この関数は、両端キュー要素の順序を逆にするために使用されます。

  • rotate() −この関数は、引数で指定された数だけ両端キューをローテーションします。指定された数が負の場合、左に回転します。それ以外の場合は右に回転します。

以下のプログラムは、dequeとcollectionsモジュールを使用して上記の操作を実装する方法を示しています。

import collections
de = collections.deque([10,20,30,40])
print(de)
de.append(50)
print ("\nAppending at right the deque is : ")
print (de)
de.appendleft(60)
print ("\nAppending at left the deque is : ")
print (de)
de.pop()
print ("\nDeleting from right the deque is: ")
print (de)
de.popleft()
print ("\nDeleting from left the deque is: ")
print (de)
de.extend([70,80])
print ("\nExtending deque at end is : ")
print (de)
de.extendleft([100,90])
print ("\nExtending deque at beginning is : ")
print (de)
de.rotate(-2)
print ("\nRotating deque is : ")
print (de)
de.reverse()
print ("\nReversing deque is : ")
print (de)

出力

上記のコードを実行すると、次の結果が得られます-

deque([10, 20, 30, 40])
Appending at right the deque is :
deque([10, 20, 30, 40, 50])
Appending at left the deque is :
deque([60, 10, 20, 30, 40, 50])
Deleting from right the deque is:
deque([60, 10, 20, 30, 40])
Deleting from left the deque is:
deque([10, 20, 30, 40])
Extending deque at end is :
deque([10, 20, 30, 40, 70, 80])
Extending deque at beginning is :
deque([90, 100, 10, 20, 30, 40, 70, 80])
Rotating deque is :
deque([10, 20, 30, 40, 70, 80, 90, 100])
Reversing deque is :
deque([100, 90, 80, 70, 40, 30, 20, 10])

  1. Pythonのissuperset()

    この記事では、Pythonでのissuperset()と、さまざまな分野でのその実装について学習します。 このメソッドは、セットBのすべての要素に引数として渡されるすべての要素セットAが含まれている場合はブール値Trueを返し、Aのすべての要素がBに存在しない場合はfalseを返します。 これは、BがAのスーパーセットである場合、それを意味します returns true; else False 例 いくつかの例を見てみましょう A = {'t','u','t','o','r','i',

  2. Pythonコンテナのデータ型

    コレクションには、いくつかのコンテナデータ型があります。これは、dict、list、setなどのPythonの汎用組み込みコンテナの代替です。 一部のコンテナは- Sr.No。 コンテナと説明 1 namedtuple() 名前フィールドを持つタプルサブクラスを作成するために使用されます 2 deque リストタイプのデータを使用したキュー 3 カウンター ハッシュテーブルオブジェクトをカウントするdictのサブクラス 4 ChainMap 複数のマッピングの単一ビューを作成するために使用されます 5