Size: a a a

2021 June 18

ДБ

Дмитрий Башинский... in F# Chat
этой функции нет на моменте создания массива
источник

ДБ

Дмитрий Башинский... in F# Chat
она уже в запросе от юзера
источник

O

Ortofax in F# Chat
это если делать OrderByAndTake, тогда да - N будет известно. если MyOrderBy(..).Take(N), то не сработает
источник

IC

Ilya L Che in F# Chat
Ага, я и предлагал заменить на одну функцию. Не вижу пока, почему такое решение не подходит, если честно)
источник

ДБ

Дмитрий Башинский... in F# Chat
подходит
источник

IC

Ilya L Che in F# Chat
Ну то есть в формулировке исходной было требование именно ленивости двух функций, но в целом для задачи ок.
источник

ДБ

Дмитрий Башинский... in F# Chat
моя голова щас не понимает как ты сортируешь через fold))
источник

ДБ

Дмитрий Башинский... in F# Chat
ты дерево строишь?
источник

RM

Roman Melnikov in F# Chat
он не сортирует, он выбирает 10 максимальных/минимальных
источник

ДБ

Дмитрий Башинский... in F# Chat
за один проход?
источник

IC

Ilya L Che in F# Chat
Угу.
источник

ДБ

Дмитрий Башинский... in F# Chat
так, покажи мне эту магию))
источник

IC

Ilya L Che in F# Chat
У меня тоже голова не варит, поэтому полного описания решения сейчас точно нет.
источник

IC

Ilya L Che in F# Chat
Ну смотри, ты  по сути через fold идёшь по всему набору данных и отбираешь 10 наибольших, таща рядом словарик из N самых-самых. Получил в лямбде следующий элемент, сравнил с содержимым словарика. Сохранил, если надо, пошёл дальше.
источник

ДБ

Дмитрий Башинский... in F# Chat
я так понимаю в фолдере будет что то такого
if acc.Count >= 10 && min acc >= current then acc
else ...
источник

ДБ

Дмитрий Башинский... in F# Chat
понял
источник

ДБ

Дмитрий Башинский... in F# Chat
блин, fold всемогущ конечно
источник

O

Ortofax in F# Chat
в фолдере будет TryInsert(acc, current)
источник

IC

Ilya L Che in F# Chat
Надо глянуть имплементацию словаря, какие там оптимизации, но в целом так. Возможно, что-то отдельно надо хранить.
источник

ДБ

Дмитрий Башинский... in F# Chat
а куда такой инсерт?
источник