Быстрая работа с массивами или множествами

Nov 05, 2015 08:56

Есть ли какието способы ускорить работу с массивами (пересечение, объединение ( Read more... )

Leave a comment

Comments 15

e_maksimov November 5 2015, 06:34:13 UTC
Раз шаред хостинг и ничего серьезного нельзя ни поставить, ни потюнить, то:
1. способы ускорить работу с массивами (пересечение, объединение)? - нет, нельзя. В Вашем случае доступны только стандартные функции и типы данных.
2. можно как то указать - что это массив типа int чтобы ускорить - на стандартном PHP-array нельзя, ибо он реализован через Hash Table.

Reply

shuchkin November 5 2015, 06:59:00 UTC
можно, если все числа побайтово pack('N', $n ) записать в строку и работать как с сишным массивом

Reply

e_maksimov November 5 2015, 06:59:46 UTC
и это будет быстрее?

Reply

zupernintendo November 5 2015, 08:52:34 UTC
ок надо будет попробовать.
по сути нужен SETBIT (bitmap) как в редисе

----

посмотрел чет не понял

Полученная бинарная строка длиной 6 байт будет содержать последовательность байтов 0x12, 0x34, 0x78, 0x56, 0x41, 0x42.

вот я упаковал и что с ним делать дальше
чтото не то.

Reply


fssimmer November 5 2015, 07:43:03 UTC
а что еще есть на хостинге? хотя нонче уже и редис обычно не проблема

Reply

zupernintendo November 5 2015, 08:54:18 UTC
редис то есть там.
но не гарантирована целостность и актуальность положенных данных и скорость работы - т.е. один сервер на все аккаунты. кто че хочет - то творит.
т.е например положил свои данные а кто нибуть взял и удалил или заменил своими по тем же ключам.

Reply

fssimmer November 5 2015, 09:30:57 UTC
бида-бида, ну тогда только если алгоритмическая оптимизация или пересмотреть архитектуру, а так, я не думаю, что получится "прыгнуть выше головы" пхп

Reply


ratnos November 5 2015, 08:04:59 UTC
Поэтому я отказался от шаред-хостингов давным-давно и счастлив.

Reply


ksoo_ad November 5 2015, 09:32:38 UTC
Не могу точно сказать как называются, но у php были кастрированые массивы, как раз для ускорения.

Reply


dil November 5 2015, 10:55:13 UTC
Видимо, пора переходить на питон ;) Там и множества есть, и объединения, и пересечения встроенными операторами.

Reply

zupernintendo November 5 2015, 16:35:26 UTC
там на базе битрикса все это крутится.
проще переписать вычисление на сишке как cgi скрипт или fastcgi.
чем всю систему переводить.
да и не думаю что перевод на питон даст какое то ускорение вычислений.

Reply


Leave a comment

Up