Size: a a a

2021 January 23

К

Константин in javascript_ru
sort()
источник

R

Rainbow Spike in javascript_ru
у меня была такая задачка с наклейками. после работы в редакторе, когда расставляются сначала фоны, а потом тексты, наклейки идут в редакторе в этом же порядке. я сделал пересортер несколько сложнее, чем просто sort()
источник

К

Константин in javascript_ru
И если скажешь, что он меддленый - я тебя забаню, так как в v8 юзается тимсорт
источник

К

Константин in javascript_ru
Rainbow Spike
у меня была такая задачка с наклейками. после работы в редакторе, когда расставляются сначала фоны, а потом тексты, наклейки идут в редакторе в этом же порядке. я сделал пересортер несколько сложнее, чем просто sort()
Можно и на сортировке сделать.
Просто фитнесс будет сложнее
источник

DM

Denys Mikhalenko in javascript_ru
Разве? Я думал там qSort
источник

К

Константин in javascript_ru
Мы же с тобой спорили.
Там он гибрид.
Там и qsort, и вставки и тимсорт.
Зависит от размера и предсортировки
источник

DM

Denys Mikhalenko in javascript_ru
Да, все так
источник

DM

Denys Mikhalenko in javascript_ru
Там несколько имплементаций
источник

DM

Denys Mikhalenko in javascript_ru
Что за пресортер?
источник

DM

Denys Mikhalenko in javascript_ru
О чем ваще речь
источник

К

Константин in javascript_ru
Тимсорт это уже Квик + мердж, там чанки между собой сортируются тоже
источник

К

Константин in javascript_ru
Те он проверяет насколько шумный набор, и может оптимизировать это дело.
источник

DM

Denys Mikhalenko in javascript_ru
И сколько там этих наклеек?
источник

DM

Denys Mikhalenko in javascript_ru
Просто есть ощущение, что это все дает профит на больших масштабах
источник

DM

Denys Mikhalenko in javascript_ru
Там их миллионы?
источник

R

Rainbow Spike in javascript_ru
наклейки делятся на фоновые, у которых z-index всегда ниже,
@4,209,110,55
#
~
http://screenshot.ru/34cbba1bead2866e2b1a28ce7171eeb7.png показал без скруглений, а то запутаетесь
источник

R

Rainbow Spike in javascript_ru
и текстовые
@0,214,100,59
[sam]Он нужен\\ нам, Хеликс.
~
http://screenshot.ru/7ccdc819fb192243bbaacd6e2ac95e1e.png
источник

R

Rainbow Spike in javascript_ru
координаты наклеек задаются 4 параметрами - от верха картинки вниз Y-координата, от лева картинки вправо X-координата, ширина наклейки вправо, глубина наклейки вниз
источник

R

Rainbow Spike in javascript_ru
и вот в сортировщике у текстовых наклеек определяются границы (x, x+ширина, y, y+глубина) и пишутся в массив borders
а у фоновых - центральная точка (x+половина ширины, y+половина глубины) и пишется в массив centers
источник

R

Rainbow Spike in javascript_ru
и я их не сортирую напрямую, а лишь меняю их номерок
источник