最大値と最小値

概要

 最大値と最小値は、五数要約のアルゴリズムによって、中央値および四分位点と共に求めることができる。五数要約アルゴリズムにおいては、ソーティングを適用する必要があるが、最大値と最小値のみが必要であるなら、まず暫定値を定めて、集団に含まれるそれぞれの数との比較を行うだけで良い。

配列の最大値と最小値

以下のサンプルソースは、C言語による、要素数 qt 個の配列 array の最大値を求めるためのプログラムです。
静的・動的にかかわらず、配列の要素数 m は既知であり、繰り返しのカウンタとして用いることができます。
汎用のため、倍精度実数を扱う関数として定義しており、呼びだす側で引数となる配列、および結果として返る値をキャストして用います。

/*配列の最大値*/

double    max(double array, int qt)
{
    double    max;    /*最大値を格納する変数*/

    qt--;               /*配列の要素数-1が配列終端の要素番号*/
    max = array[qt];    /*配列の終端 array[qt] を暫定的な最大値としておく*/
    qt--;               /*配列要素を1つ処理したため*/

    /*配列の先頭まで、maxとそれぞれの配列要素を比較し、max < 配列要素ならば max を更新する*/
    while(qt >= 0)
    {
        max = (max < array[qt]) ? array[qt] : max;
            /*最小値を求める場合の更新条件は (min > array[qt])*/
        qt--;
    }

    return    max;
}

関連項目

更新履歴

2008/07/21: 作成


Back / Studying / Top