Size: a a a

Elm Lang сообщество разработчиков

2021 January 04

AP

Aleksei (astynax) Pi... in Elm Lang сообщество разработчиков
Если потребуется один минимум, то в итоге получится один проход плюс некоторые расходы на структурки
источник

AP

Aleksei (astynax) Pi... in Elm Lang сообщество разработчиков
Если элементов известное количество и нужна прям скорость, берут не списки, а массивы. А там уже свои сортировки, в т.ч. и инплейс
источник

DK

Denis Krivosheev in Elm Lang сообщество разработчиков
Ну не все так просто ... если голова например пятая, а нам надо первые три, то на большие нужно забить, а рекурсивно копать меньшие. А если нам надо пять а голова третья, то можно забить на большие
источник

AP

Aleksei (astynax) Pi... in Elm Lang сообщество разработчиков
Ну будет зафорсено чуть больше санков
источник

AP

Aleksei (astynax) Pi... in Elm Lang сообщество разработчиков
Фишка в том, что можно сортировать даже бесконечные стримы. Возможно — бесконечно долго, но тем не менее :)
источник

DK

Denis Krivosheev in Elm Lang сообщество разработчиков
Даже не представляю как сортировать бесконечные стримы... думаю тут ты ошибаешься
источник

DK

Denis Krivosheev in Elm Lang сообщество разработчиков
Потому что любая сортировка базирующаяся на сравнении требует как минимум просмотра всех элементов по разу
источник

DK

Denis Krivosheev in Elm Lang сообщество разработчиков
А если элементов бесконечно ... то на этом все и кончится
источник

DK

Denis Krivosheev in Elm Lang сообщество разработчиков
У нас не получится получить список больших и список меньших
источник

DK

Denis Krivosheev in Elm Lang сообщество разработчиков
Если только доказать например что последовательность монотонно возрастает
источник

DK

Denis Krivosheev in Elm Lang сообщество разработчиков
Но не думаю что компилятор способен и на такое
источник

AP

Aleksei (astynax) Pi... in Elm Lang сообщество разработчиков
Denis Krivosheev
Потому что любая сортировка базирующаяся на сравнении требует как минимум просмотра всех элементов по разу
Не требует :)
источник

DK

Denis Krivosheev in Elm Lang сообщество разработчиков
Каким это образом? Взял ты голову и каким образом ты докажешь что какой-нибудь триллионый элемент не меньше чем голова?
источник

AP

Aleksei (astynax) Pi... in Elm Lang сообщество разработчиков
Если задача — получить сколько-то элементов, то и будут получены только они. Т.е. "меньших" нужно только скольк-то
источник

DK

Denis Krivosheev in Elm Lang сообщество разработчиков
Но каким именно образом ты сможешь доказать что где-то сильно дальше в последовательности нет элементов меньше тех что ты уже нашёл?
источник

DK

Denis Krivosheev in Elm Lang сообщество разработчиков
Ты не можешь этого знать пока не просмотришь все элементы
источник

AP

Aleksei (astynax) Pi... in Elm Lang сообщество разработчиков
Хмм, да, понял тебя. Для известного множества значений получится провернуть, а для бесконечных — нет
источник

AP

Aleksei (astynax) Pi... in Elm Lang сообщество разработчиков
Для чисел придётся дойти до конца :)
источник

DK

Denis Krivosheev in Elm Lang сообщество разработчиков
😊
источник

AP

Aleksei (astynax) Pi... in Elm Lang сообщество разработчиков
Энивей, ленивость экономит ресурсы прилично
источник