緊急出版!基本情報技術者試験『非公開』本試験問題を解く!!  訂正

p.73 H14年度春期・午後【問4】・設問2【空欄e】【空欄f】【空欄g】の解説中

p.73「順にトレースすると〜」からp.74 左段 下から9行目「〜Arrangeが終了する。」まで
 順にトレースすると,2回目のQuickSortでは,Min=0,Max=4であるため,
[0][1][2][3][4]
 3  2  1  4  0 
この範囲でFindPivotが実行される。A[Min]A[0]であり,A[1]と比較してA[0]のほうが大きいので,今回はPivotの値は3となる。
 Pivot=3,Min=0,Max=4として,Arrangeを実行する。
Arrangeの処理>
 L=0,R=4であり,A[0]A[4]が交換される。
LR
[0][1][2][3][4]
 0  2  1  4  3 
 A[L](=0)<Pivot(=3)が成立するので,Lは1増加して1となる。
LR
[0][1][2][3][4]
 0  2  1  4  3 
 A[L](=2)<Pivot(=3)が成立するので,Lは1増加して2となる。
LR
[0][1][2][3][4]
 0  2  1  4  3 
 A[L](=1)<Pivot(=3)が成立するので,Lは1増加して3となる。
LR
[0][1][2][3][4]
 0  2  1  4  3 
 A[L](=4)>Pivot(=3)となるためループを抜ける。
R
L
[0][1][2][3][4]
 0  2  1  4  3 
 A[R](=3)≧Pivot(=3)が成立するので,Rは1減少して3となる。
RL
[0][1][2][3][4]
 0  2  1  4  3 
 A[R](=4)≧Pivot(=3)が成立するので,Rは1減少して2となる。
 A[R](=1)<Pivot(=3)となるためループを抜ける。
 ここでLRとなり,ループから抜ける。
 「・ Ret ← L」によって,Retに3が入ってArrangeが終了する。

画面を閉じる

Copyright (c) 2003 All Rights Reserved by Gijutsu-Hyohron Co., Ltd.