Size: a a a

2020 September 21

T

Tim Ami in pro.jvm
Tagir
@Arbadak полный кусок кода, пожалуйста
сори немогу, но блин это ж вложенная итерация...
источник

T

Tagir in pro.jvm
Ну то есть квадратичная сложность?
источник

AB

Andrew Bystrov in pro.jvm
у тебя что-то типо
list.removeIf(x -> otherList.stream().map().noneMatch())? ессли да, то квадрат тут
источник

T

Tagir in pro.jvm
А характерный размер коллекций какой?
источник

T

Tagir in pro.jvm
Если там не больше 10 элементов, так и наплевать?
источник

T

Tim Ami in pro.jvm
там порядка 80 действий в прореживаемой коллекции и порядка 5-7 действий во вложенной, и на каждый элемент стрим..
источник

T

Tim Ami in pro.jvm
Andrew Bystrov
у тебя что-то типо
list.removeIf(x -> otherList.stream().map().noneMatch())? ессли да, то квадрат тут
да, и в NoneMath склейка стрингов )))
источник

T

Tim Ami in pro.jvm
вообщем считаете допустимо?
источник

T

Tagir in pro.jvm
Ну то есть порядка 500 итераций всего?
источник

T

Tagir in pro.jvm
Я откуда знаю? Если это всё что делается в ответ на одно действие пользователя, то плевать
источник

T

Tagir in pro.jvm
А если это часть пакетного процесса, который повторяется ещё миллион раз, то не плевать
источник

T

Tagir in pro.jvm
Кстати, вспоминаю поучительную историю. Был заведомо сортированный массив (вроде даже чисел), надо было искать по нему. Ну я, конечно, бинарный поиск впихнул
источник

T

Tagir in pro.jvm
Потом измерили. Оказалось, линейный быстрее. Там элементов порядка 10
источник

A

Artjom Kalita in pro.jvm
и что так существенно это было для 10 элементов ?
источник

T

Tagir in pro.jvm
Наивный computer science говорит, что сравнений в среднем будет меньше в бинарном поиске. Но архитектура процессоров ржёт над этим
источник

T

Tagir in pro.jvm
Линейный поиск и векторизовать можно, и бренч-предиктор с ним лучше работает, а с бинарным нифига не сделаешь
источник

T

Tagir in pro.jvm
Думаю, там равновесие наступает даже не на 20, а больше. Измерять нужно
источник

AB

Alessio Bratenkov in pro.jvm
Интересно
источник

AB

Alessio Bratenkov in pro.jvm
Можно на собесах такое задавать
источник

OR

Oleksandr Romanov in pro.jvm
Tagir
Потом измерили. Оказалось, линейный быстрее. Там элементов порядка 10
То есть пока нет никаких замеров (в виде статей с бенчмаркингом) что вот до стольких элементов в такого рода процессоре и стакой версии джавы лучше использовать линейный поиск, чем бинарный?
источник