Как стать автором
Обновить

Комментарии 3

Про недавние стикеры по сути вроде всё верно сказано, но решение напрочь оторвано от реальности. Допустим, клиент хранит 20 последних стикеров. Ну или 100. Да пусть даже 1000. Это самый обычный массив id стикеров, где перед вставкой нового значения в начало предварительно удаляется такое же существующее самым тупым поиском. Если уж очень хочется оптимизировать [то, что не надо оптимизировать] – это может быть односвязный список. Даже если недавних стикеров будет миллион – работать будет за долю секунды.
Крайне не одобряю использование HashMap для решения этой задачи, но всё же хочу обратить внимание на NSCountedSet: developer.apple.com/documentation/foundation/nscountedset

Пример 2. Вместо простого поиска в один проход в односвязном списке вводим новую структуру данных и сохраняем данные с приседаниями.
Пример 3. Вместо жменьки if подключаем фреймворк и городим костыли вокруг него.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий