Для чётного количества чисел медианой считается полусумма двух средних чисел.
template<class T> T _median4 ( const T * a ) { nat i1, i2, i3, i4; if ( a[0] < a[1] ) { i1 = 0; i2 = 1; } else { i1 = 1; i2 = 0; } if ( a[2] < a[3] ) { i3 = 2; i4 = 3; } else { i3 = 3; i4 = 2; } return ( _max ( a[i1], a[i3] ) + _min ( a[i2], a[i4] ) ) / 2; } Исходники находятся в файле median.h. Наверх |