アルゴリズムの基本:値の交換…swap(スワップ)…①

プログラミングでは、いろいろな場面で、2つの変数の値を交換する処理を必要とします。
2つの変数の値を交換することをスワップ(swap)とも言います。
今回は、基本的な交換のアルゴリズムを説明します。

【目次】
1.スワップとは
2.スワップのアルゴリズム
2.1.作業用変数Wに、変数Aの値を代入
2.2.変数Aに、変数Bの値を代入
2.3.変数Bに、作業用変数Wの値を代入
3.交換のアルゴリズムのフローチャート

1.スワップとは

2つの変数AとBの値を交換することをスワップ(swap)と言います。

スワップの基本的な方法は、交換する2つの変数の他に、もう1つ作業用に変数(ここでは変数名W)を用意して使用する、次のアルゴリズムによる方法です。

なお、今回は、すでに変数Aには値1が、変数Bには値99が入力されているものとし、変数Wも用意してあるものとして、これらの変数AとBの値を交換する例を使って説明します。

交換前の初期状態

アルゴリズムは次の3つの処理の順次構造になります。

2.スワップのアルゴリズム

①作業用変数Wに、変数Aの値を代入
②変数Aに、変数Bの値を代入
③変数Bに、作業用変数Wの値を代入

スポンサーリンク

2.1.作業用変数Wに、変数Aの値を代入

①作業用変数Wに、変数Aの値を代入

①の処理では、変数Aの値を変数Bの値に変える前に、作業用の変数Wに保存しておく処理です。

2.2.変数Aに、変数Bの値を代入

②変数Aに、変数Bの値を代入
②変数Aに、変数Bの値を代入

②の処理では、変数Aの値を変数Bの値に変えます。

2.3.変数Bに、作業用変数Wの値を代入

③変数Bに、作業用変数Wの値を代入

③の処理では、変数Bの値を作業用の変数Wの値、すなわち、変更前の変数Aの値に変えます。
以上、①から③の一連の処理手順で、変数AとBの値を交換することができました。

3.交換のアルゴリズムのフローチャート

このアルゴリズムフローチャートにしたものは、次の図です。

作業用変数を使った、2つの変数の値の交換のフローチャート

上記と同様の内容をYouTube動画「アルゴリズムの基本:値の交換…swap(スワップ)…①」でも説明しています。
どうぞ、ご覧ください。

スポンサーリンク

コメント

スポンサーリンク