Я смотрел вокруг stackoverflow Нетривиальная ленивая оценка, которая привела меня к презентации Кигана Макаллистера: Зачем изучать Haskell. В слайде 8 он показывает минимальную функцию, определенную как:
minimum = head . sort
и заявляет, что его сложность O (n). Я не понимаю, почему сложность называется линейной, если сортировка с помощью замены равна O (nlog n). Сортировка, упомянутая в сообщении, не может быть линейной, поскольку она не принимает ничего о данных, поскольку это потребовалось бы линейным методам сортировки, таким как сортировка сортировки.
Ленькая оценка играет здесь таинственную роль? Если да, то чем объясняется это?