実戦向け?なアルゴリズムが知りたいです.
ただ単に「プログラムが書ける!」というだけでは,やはりダメだと思っています.
もっと,プログラムを書くなら,このような手法があるぜ!と言った,知識がほしいです.
例えば,c言語で「1〜10でランダムに重複しない数字を持つ配列」を作成する場合ですと,
lang
1#include <stdio.h> 2#include <stdlib.h> 3 4int main(){ 5 int $num[10]; 6 7 //1から10までの数値を代入 8 for (int $i=0; $i<10; $i++){ 9 $num[$i] = $i+1; 10 } 11 12 //配列の中身をランダムに入れ替える(擬似的な乱数にする) 13 for (int $i=0; $i<10; $i++){ 14 int $rnd = rand()%10; 15 int $temp = $num[$rnd]; 16 $num[$rnd] = $num[$i]; 17 $num[$i] = $temp; 18 } 19 20 //結果を出力 21 for (int $i=0; $i<10; $i++){ 22 printf("$num[%d] = %d;\n", $i, $num[$i]); 23 } 24 25 return 1; 26}
といった手法が有ります.
こういった「実践で使える」アルゴリズムを幅広く知りたいと思っています.
皆さんは普段,どのようなアルゴリズムを愛用していらっしゃいますでしょうか.
よろしければご教授ください.
回答10件
あなたの回答
tips
プレビュー
2015/06/19 05:59
退会済みユーザー
2015/06/19 06:26
2015/06/19 06:44
2015/06/19 07:33
2015/06/19 07:36
2015/06/19 08:25
2015/06/19 08:26
退会済みユーザー
2015/06/19 08:33
2015/06/19 17:56
2015/06/20 09:22
2015/06/20 11:22
2015/06/25 10:32 編集