Closed RadoRado closed 10 years ago
Направих едно решение и с lodash. Като цяло ми изглежда по-бавно от първия вариант. Инициализирах foundDuplicate още при деклрацията, но не видях къде мога да си спестя проверка - просто не го инициализирам в if-a.
Определено е по-изчистено това с lodash-a.
Относно скорост, второто върви с O(n * lgN)
заради това, че groupBy
ползва set, за да търси.
Първото ти решение върви с O(N^2)
, тъй като за всеки checkin правиш пълна линейна проверка дали се повтаря.
Т.е второто е по-бързо :+1:
Задачката работи и е добра написана.
Имам коментари по някои парчета код:
Тук е добре да дадеш начална стойност на
foundDuplicate
иначе си стои простоundefined
Ти го инициализираш в цикъла, но може да си спестиш 1 проверка, ако му дадеш начална стойност.
Тук:
Може да стане просто:
И като за край - пробвай да помислин една идея по-чисто решение, ползвайки
groupBy
:+1: