質問: これまでにも [アルゴリズム](https://ja.stackoverflow.com/questions/tagged/%e3%82%a2%e3%83%ab%e3%82%b4%e3%83%aa%e3%82%ba%e3%83%a0 "'アルゴリズム' のタグが付いた質問を表示") タグで様々な「より良い実装は?」質問が投稿されていますが・・・。 数値からランダムに値を取り出す『軽い』方法 > > 0から19までの連続した値があるとし、そこから重複せずに六つだけ取り出したいと思います。 > > > (中略) > > > 1.コレクションなどの機能は使用しない > > 2.forやifなどといった、基本的な処理だけで実現したい > > 3.取得した後も、昇順に並んでいること > > 4.簡単なことだけに、極力コードを少なくしたい > > > 「コレクションなどの機能」「基本的な処理」の範囲が曖昧ですし、「極力コードを少なくしたい」の程度もはっきりしません。これらの条件は言語にも依存するように思いますが、言語の指定はありません。回答しにくいのもそうですが、評価基準がはっきりしないので投票もしにくいと感じます。 また、一つでも回答がついていればそこに別解を出すハードルは下がるように思います。そんな実装にするぐらいならこっちの方がいいのに、参考までにこういうのもありますね、等々。既に5件回答がついていますが、質問の条件を満たしているのかは謎です。 そういった状態のままこの質問や回答を受け入れる流れを作らないためにも、要件がもう少しはっきりするまで一旦クローズしてもいいのでは?と思ったのですが、別にそうでもないのでしょうか。 もっとも、下手に条件を絞り込まれるよりも漠然と「好きな言語で好きなアルゴリズムで実装してください」という形式の方が、Q&Aとしての汎用性は高いかもしれないなと思ったり。Qに合わないという点に関しては、Aに合うようにQを変えてしまうことも可能ですし。 関連 -- * 適切な質問かの討議:面白イースターエッグ * "OSが作れない言語はありますか" がオフトピックの理由
回答: 質問者さんは、自分なりに考えてみたところ「コレクションやソートを使った方法は思いついたけど、それらを使わずにやる良い方法はないだろうか?」という意図で質問されたものと解釈しました。 配列を使わずソートもしないで昇順に並んでいること、と言う条件は、結構良い点をついているのではないでしょうか? 普通に思いつく方法だと簡単にできるけど、もっと画期的な方法はないか、というのは、私は「良い質問」だと思うので、クローズには反対します。