※私の質問に目を通していただきありがとうございます。質問が適切でない場合はご指摘宜しくお願いします。
クイックソートについて勉強している学生です。
今、珠玉のプログラミング(programing pearls)という本でクイックソートp147ーを勉強しているのですがここでクイックソートについて3つほど質問があります。
(前提として、下記画像は分割方法などは適当でとにかくクイックソートのイメージが正しいか確認するためのものです。緑色が基準値を表しています)
質問
①下記画像は私がクイックソートを行っているイメージを図にしているのですが正しいでしょうか。私のイメージとしては、基準値を決めてある配列を基準値より大きいグループと以下のグループに分ける工程を部分配列の長さが1以下になるまで繰り返すということです。
②クイックソートを実装するにあたり大事になってくる点は大きく二つあり、一つ目が基準値の決め方、二つ目が基準値で配列を分割する方法で正しいでしょうか。
③配列を基準値で分割する方法には様々な手法があり、その一つがNico Lomutoが考えた方法であると考えているのですが正しいですか?
-------------------追加質問----------------------
下記画像は、この本のクイックソートに関する部分の一部の写真なのですが「分割の方法」というのは、画像一枚目の真ん中下に書いてある基準値tでtより大きいものと小さいものに分ける処理を指しています。私の解釈だと最後の画像のクイックソートの関数がNico Lomutoの分割法を使ったクイックソートの関数の疑似コードだと考えたのですがどうでしょうか
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。