クイックソート

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
初心者

クイックソート

#1

投稿記事 by 初心者 » 18年前

ここのクイックソートアプリのソース前提にした質問なのですが

if(l<i-1){//左範囲が分割可能なら
sort(l,i-1,x);//左範囲を分割してソートを行う
}
if(j+1<r){//右範囲が分割可能なら
sort(j+1,r,x);//右範囲を分割してソートを行う
}

この部分を最初の段階で抜けて、1番左の数字が確定し再帰する時
l=1になっていますが1になるのはどの時点で代入されるんですか?
分かりにくい文章かと思いますがよろしくお願いします。
アプリでいうと85ページあたりだったと思います。

管理人

Re:クイックソート

#2

投稿記事 by 管理人 » 18年前

初心者さん、こんにちは。
いつも、回答が出来ずすみません><;
今日こそオンラインの環境でパソコン出来る時間を確保します(_ _|||)

85ページでは、確かにlは0だと思います。
もしlが1だと書いてあれば間違いだと思うのですが、そのような記述は何番目に書いてありました?

管理人

Re:クイックソート

#3

投稿記事 by 管理人 » 18年前

なお、89の時点でlが1になるのは正常な話です。
戻ってくるのは199の話ですが、そこではlの話はしていませんし。。
何番の話でしょうか?

閉鎖

“C言語何でも質問掲示板” へ戻る