Надо было массивчик на 17к где-то отсортировать.

sort() в FF, IE, Chrome и Konqueror запускал функцию сравнения где-то 15к раз в среднем. Опера - 550к. Нет, я не опечатался. 550 тысяч сравнений для массива с 17 тысячами элементов.

Охренел, попросил Гудсофта написать qsort на жс (никак не запомню алгоритм, а читать лень). Результат: самописная сортировка массива на JS работает быстрее встроенной функции во всех(!) браузерах. Тем более в опере :)

Кстати, этот массив - результат работы парсера HTML. На JS. По свойству innerHTML. И он тоже работает в разы быстрее, чем пробежка по DOM-у.

Никак не пойму, что я в жизни не так понял. Но что-то точно.

UPD: сорре, совсем забыл написать. Элементов было не 17к, а 1.7к. Что делает ситуацию еще глупее.

Комментарии (6)

Виртулис (34) 22. марта, 2010.г.  
 0 0
мда, и как бы ты решил подобную задачу во времена 80386 с 2 Mbyte RAM-а....?

тогда и задач-то таких не было :)
wad (56) 22. марта, 2010.г.  
 0 0
в js нет qsort, есть только array_sort.
а тормозной он потому, что всё время ошибки и типы данных проверяет, при каждой итерации.
StarControlII (45) 22. марта, 2010.г.  
 0 0
мда, и как бы ты решил подобную задачу во времена 80386 с 2 Mbyte RAM-а....?
Spectrum (34) 22. марта, 2010.г.  
 0 0
Печаль, счастье.
Allower 22. марта, 2010.г.  
 0 0
ахуеть
Похожие записи

Виртулис (34)