2016-01-08 6 views
0

Мне интересно, как получить медиану 3D-массива (куб).медианное значение 3D-массива

Хотя я понимаю, как вычислить медиану простого массива 1D, я не мог найти способ, как он должен работать в трех измерениях.

Может кто-нибудь объяснить, как найти медианное значение 3D, пожалуйста.

Спасибо.

ответ

2

Нет такой вещи, как медиана трехмерного массива. Существует только медиана списка чисел. Если ваш список хранится как 3D-массив, это не имеет большого значения. Просто скопируйте все элементы в 1D-массив, отсортируйте его и возьмите средний элемент.

+0

Или просто проиндексируйте свой трехмерный массив одним индексом (используя индексы '/' и '%', чтобы получить индивидуальные размеры). – SirGuy

+0

@GuyGreer: На большинстве языков программирования, которые я знаю, это вызовет обычную процедуру сортировки довольно сложно. Если это не массив huuge, я думаю, что я бы выбрал менее оптимизированный, но более простой подход к копированию массива. –

+0

Согласен, я не исправлял вас, а просто добавлял еще одну возможность. Это не обязательно намного сложнее, если вы можете поместить 3D-массив в другой класс, а затем определить его функцию доступа к члену. Однако, как вы говорите, это может быть или не быть возможно. – SirGuy

Смежные вопросы