締切り済みの質問
0人が「このQ&Aが役に立った」と投票しています
回答(5件中 1~5件目)
No.3 です。
>私含めて本人もソースだとかプログラムが一切分かりません。
>手順自体は、検索したようで理解しているらしいのですが、回答に自信がないらしく正解を知りたいとのことです。
「C&C++でプログラムし、結果(比較回数)を回答しろ」、ということですね。
でしたらこのコミュニティーには相応しくないのでは・・。
☆アンケート形式にしちゃえば、ぎりぎりセーフかも。
昇順にソートしたとき、比較○回に1票。
降順にソートしたとき、比較◇回に1票・・とか。
>軸要素は先頭の2要素のうち大きいほうとせよ
って、対象が、2,4,8,1,6,5,2,7,3,7 となっていることから自明ですよね。
(「先頭」は1つしかないっつうツッコミは無しとして)
☆「軸要素は4とせよ」という記述ではないことから、やはり(様々な条件に対応可能な)プログラムを作る、のが「そもそも」ではないでしょうか。
+++++++++++++++++++++++++++++++++++++
アンケート形式として、年寄りは、
昇順にソートしたとき、比較 15 回に1票。
降順にソートしたとき、比較 16 回に1票。
注:全然自信がありません(まっアンケートだから、「良」として下さい)。
「バブル」なら 9 + 8 + 7 + 6 + 5 + 4 + 3 + 2 + 1 で固定かなぁ・・?。
投稿日時 - 2008-12-18 17:23:41
お礼
返信ありがとうございます。
本人は回答よりも筋道を知りたかったようですが、自己解決したらしいのでこれにて〆ます。
何度もありがとうございました。
投稿日時 - 2008-12-22 01:30:20
>2,4,8,1,6,5,2,7,3,7の整数をクイックソートで並べ替えよ。
http://okwave.jp/qa4557292.html
この質問文中のソースに、「比較回数」処理を追加し、試されたら如何でしょう。
投稿日時 - 2008-12-17 13:08:54
補足
私含めて本人もソースだとかプログラムが一切分かりません。
手順自体は、検索したようで理解しているらしいのですが、回答に自信がないらしく正解を知りたいとのことです。
もし拝見されたら分かる限りで教えてくださるとありがたいです。
よろしくお願いします。
投稿日時 - 2008-12-18 12:34:24
qsortにせよ、std::sortにせよ、アルゴリズムとしてクイックソートが使われていることは保証されていません。
また、仮にクイックソートで実装されていたとしても、
> 軸要素は先頭の2要素のうち大きいほうとせよ
という要件を満たすことができません。
#1の回答のとおり、検索すればすぐに結果が得られますので、その旨お伝えください。
投稿日時 - 2008-12-17 08:20:39
補足
先の補足とダブりますが、手順自体は検索したようで理解しているらしいのです。ただ、回答に自信がないらしく正解を知りたいとのことです。
もし拝見されたら分かる限りで教えてくださるとありがたいです。
よろしくお願いします。
投稿日時 - 2008-12-18 12:33:14
コールバックを定義してqsort()呼び出すだけです。
参考 http://wiki.livedoor.jp/cafeboy1/d/C/C%2B%2B%20qsort(QuickSort)
C++ならSTLが使えます。
(コンパイラによってはSTLがまともに使えない事もありますが)
課題か何かでクイックソートルーチン自体を作らなければならないのでたら「ググれカス」とお伝えください。
投稿日時 - 2008-12-17 06:25:00
補足
伝えたところ、C++って何?という返答が返ってきました。
本人曰く、上記の問題はプログラムなどを使うのではなく、あくまで手動での筆記問題とのことです。
手順自体は、検索したようで理解しているらしいのですが、回答に自身がないらしく正解を知りたいとのことです。
もし拝見されたら分かる限りで教えてくださるとありがたいです。
よろしくお願いします。
投稿日時 - 2008-12-18 12:28:39