Это вычисление расстояния между точками, хотя и простое, поскольку вы работаете в одном измерении. Действительно, та точка, которая находится на максимальном расстоянии в одном измерении, всегда является одной из двух возможных точек. Так что все, что вам нужно сделать, это взять минимальное значение и максимальное значение из списка, и посмотреть, что находится дальше от рассматриваемого вопроса. Таким образом, предполагая, что числа в x являются действительными числами, это будет работать:
xmin = min(x);
xmax = max(x);
maxdistance = max(x - xmin,xmax - x);
В качестве альтернативы, некоторое время назад я установил общий инструмент для вычисления расстояния между точками на файловом обмене (IPDM) . Он достаточно умен, чтобы в особом случае решать простые задачи, такие как задача 1-й дальней точки. Этот звонок сделает это за вас:
D = ipdm(x,'subset','farthest','result','struct');
Конечно, он не будет столь же эффективным, как простой код, который я написал выше, поскольку это полностью общий инструмент.