Pythonで作成したDeque(両端キュー)を左右にローテーションする

スポンサーリンク

Pythonで作成したDeque(両端キュー)を左右にローテーションしてみます。

Deque (両端キュー)を作成する場合は、「PythonでDeque (両端キュー)を作成し作成したDequeを出力する」という記事が参考になります。

なお、Deque (両端キュー)の作成のために、collectionsモジュールを用いますが、これはPythonの標準ライブラリとなっていますので、事前にインストールする必要はありません。

■Python

Google Colaboratory(Google Colab),2022年11月25日現在、Python 3.7.15を使用している。

■Deque (両端キュー)を作成し要素を右にローテーションする

では、Deque (両端キュー)を作成し要素を右にローテーションするスクリプトを書いていきます。

■コード

import collections
  
test = collections.deque([1, 2, 3],maxlen=3)

test.rotate(1)

print(test)

作成する場合は、「import」を用いてcollectionsモジュールで使用できるDequeを呼び出します。呼び出した後に、testという変数を定義し、その中でdeque()を用います。括弧内には第1の引数,パラメータとして、3つの数値(要素)が格納されたリスト(イテラブル(Iterable))を渡し、第2の引数,パラメータとして、リストに格納するオブジェクトの最大数を設定するために、括弧内に「maxlen」引数,パラメータを渡します。今回は「3」とします。

その後、test変数に対して、rotate()を用います。括弧内には、引数,パラメータとして「1」を渡します。これで、作成したDeque (両端キュー)内の数値(要素)を右に「1」ステップ回転(シフト)させてローテーションが行われます。

ローテーション後、test変数内の情報をprint()で出力します。

■実行・検証

では、セルを保存し、実行してみます。

実行してみると、rotate()を用いて作成したDeque (両端キュー)内の数値(要素)を右に回転(シフト)させてローテーションを行い、ローテンション後のDequeをprint()で出力させることができました。

■Deque (両端キュー)を作成し要素を左にローテーションする

では、Deque (両端キュー)を作成し要素を左にローテーションするスクリプトを書いていきます。

■コード

import collections
  
test = collections.deque([1, 2, 3],maxlen=3)

test.rotate(-1)

print(test)

作成する場合は、「import」を用いてcollectionsモジュールで使用できるDequeを呼び出します。呼び出した後に、testという変数を定義し、その中でdeque()を用います。括弧内には第1の引数,パラメータとして、3つの数値(要素)が格納されたリスト(イテラブル(Iterable))を渡し、第2の引数,パラメータとして、リストに格納するオブジェクトの最大数を設定するために、括弧内に「maxlen」引数,パラメータを渡します。今回は「3」とします。

その後、test変数に対して、rotate()を用います。括弧内には、引数,パラメータとして「-1」(−(マイナス)をつけた数値)を渡します。これで、作成したDeque (両端キュー)内の数値(要素)を左に「-1」ステップ回転(シフト)させてローテーションが行われます。

ローテーション後、test変数内の情報をprint()で出力します。

■実行・検証

では、セルを保存し、実行してみます。

実行してみると、rotate()を用いて作成したDeque (両端キュー)内の数値(要素)を左に回転(シフト)させてローテーションを行い、ローテンション後のDequeをprint()で出力させることができました。

 

コメント

タイトルとURLをコピーしました