@hirthwork

hirthwork

Меня зовут Пить
hirthwork

Всего лишь бабочка, которой снится, что она программист

Славный отзывчивый парень © https://t.me/point_im/161357

32 я читаю 96 меня читают
5575 постов
46870 комментариев
hirthwork
31 May 03:37

День, когда Х-ворк бросил переизобретать стандартную библиотеку.
Задача: отсортировать лексикографически массив массивов. Все внутренние массивы одинаковой длины в 500 интов. Массивов всего полмиллиона.

Наивная реализация: Arrays.sort(...), где в качестве компаратора объектов используется Arrays.compare(int[], int[]).
Отрабатывает за 30 мс. Для справки, внутри там Timsort

Снобская реализация: Не, ну как же это же можно Arrays.sort(...), там же постоянно будет пробегаться по каждому массиву чтобы сравнить, медленно работать будет, есть же сортировка Бентли-Седжвика, её впендюрим как крутые программисты. А чтобы быть ещё круче, сделаем с циклом, чтобы для самого длинного куска разбиения сортировать в этом же вызове функции, сэкономим на максимальной глубине стека вызовов.
Отрабатывает за 60мс. Ну нахуй эти ваши модные алгоритмы.

Рекомендовано: postman
31 May 12:04

плебейские константы выебли джавалоха смотреть безплатно бес смс

31 May 22:28

Да, я это тоже это читал. Почитав описание тимсорта я даже понял почему он обогнал Бентли-Седжвика

#zhoav/3 в ответ на /2

Добавить пост

Вы можете выбрать до 10 файлов общим размером не более 10 МБ.
Для форматирования текста используется Markdown.