Size: a a a

2021 May 14

ПФ

Паша Финкельштейн... in Kotlin Moscow
Ээээ
источник

ПФ

Паша Финкельштейн... in Kotlin Moscow
contains в сете работает через .get в мапе
источник

ПФ

Паша Финкельштейн... in Kotlin Moscow
This class offers constant time performance for the basic operations (add, remove, contains and size),
источник

ПФ

Паша Финкельштейн... in Kotlin Moscow
Прямо в документации
источник

AN

Alexander Nozik in Kotlin Moscow
Сравнить все равно нужно с каждым. Константа равна размеру. Не один же
источник

AN

Alexander Nozik in Kotlin Moscow
Мапа использует хэшкод, так что сравнение быстрое и теоретически хэшкод может быть упорядоченным. Но все равно какая-то модифицированная линейность по размеру
источник

ПФ

Паша Финкельштейн... in Kotlin Moscow
Нет, тебе не надо сравнивать с каждым, тебе достаточно узнать что такого нет.
источник

ПФ

Паша Финкельштейн... in Kotlin Moscow
Слушай, ну давай не будем. Если у меня объектов коллизия хэшкодов внезапно то да, будет медленно. Если же её нет - то работает примерно за единицу, но в плохих случаях можно быть за, например, О(4) или даже О(6), что в О-нотации всё равно О(1)
источник

AN

Alexander Nozik in Kotlin Moscow
Если хэш сортированный то вполне может быть.
источник

ПФ

Паша Финкельштейн... in Kotlin Moscow
Это что такое сортированный хэш? И видел ли ты что хэшмэп ищет не по хэшу объекта как таковому?
источник

AN

Alexander Nozik in Kotlin Moscow
На изучение хэшмапа можно жизнь положить. Я представляю как хранение сделано. Но не особо глубоко. Я кстати тут напоролся на этом. В js перформанс мамы далеко не такой приятный
источник

ПФ

Паша Финкельштейн... in Kotlin Moscow
Нет, если мы не говорим про Concurrent - то там всё сравнительно просто. Я разобрался сам по исходникам и документации после того как спросили первый раз на собесе.
источник

ПФ

Паша Финкельштейн... in Kotlin Moscow
Так вот, чтобы у тебя поиск был долгим - надо специальные усилия применить или быть экстремально невезучим
источник

ПФ

Паша Финкельштейн... in Kotlin Moscow
А в js ты прямо Мап смотрел или дикт?
источник

AN

Alexander Nozik in Kotlin Moscow
Kotlin hashmap
источник

AN

Alexander Nozik in Kotlin Moscow
Да, увидел уже, там доп индекс. Ну тогда понятно. Я про него не помнил
источник

ПФ

Паша Финкельштейн... in Kotlin Moscow
А он во что превращается? Если очень захотеть - есть https://adrianmejia.com/data-structures-time-complexity-for-beginners-arrays-hashmaps-linked-lists-stacks-queues-tutorial/#DecentHashMap, например
источник

AN

Alexander Nozik in Kotlin Moscow
Без понятия. Надо в код слазить. Но там дорогой хэш и дорогой поиск
источник

ПФ

Паша Финкельштейн... in Kotlin Moscow
В джаваскрипте есть нативный Set, под него можно подстроиться
источник

ПФ

Паша Финкельштейн... in Kotlin Moscow
Это вот то, почему я считаю что нельзя программировать на котлине не зная низлежащего языка
источник