C言語アルゴリズム



アルゴリズム(algorithm)について

アルゴリズムとは

アルゴリズムとは、コンピュータで特定の目的を達成するための処理の手順です。

プログラムは最適なアルゴリズムと最適なデータ構造を組み合わせることで実行性能が向上します。

アルゴリズム+データ構造=プログラム

アルゴリズムの性能(実行効率)

アルゴリズムの性能は、「計算量(complexity)」という抽象的な尺度を用いて表現します。計算量は、同じ処理結果を求める複数のプログラムがあった場合に、どのプログラムが最も効率的であるか評価する基準となります。コンピュータでは多くの場合に、メモリ容量を多く費やせば処理は速くなり、処理速度を犠牲にすればメモリを節約できるといった「時間と空間のトレードオフ」の関係が成り立ちますので、性能としてどちらを重視するか兼ね合いを考える必要があります。


オーダについて

計算量は、入力データの大きさ(n)の関数として表現します。計算量は「O(オーダ)」で表し、入力の大きさnの増大に対して計算量がどの割合で膨張するのかを示すものです。例えば、実行時間が入力の大きさnの2乗に比例するアルゴリズムを「O(n^2)」と表現します。


C言語でのアルゴリズム実装

データ構造


探索


整列(ソート)



関連ページ



スポンサード リンク