PHP 8.5.2 Released!

Класс QuickHashIntSet

(PECL quickhash >= Unknown)

Введение

Класс-обёртка над множеством целых чисел.

Множества также можно перебирать конструкцией foreach, поскольку интерфейс Iterator также реализовали. Порядок, в котором множество возвращает элементы, не гарантируется.

Обзор класса

class QuickHashIntSet {
/* Константы */
const int CHECK_FOR_DUPES = 1;
const int HASHER_NO_HASH = 256;
const int HASHER_JENKINS1 = 512;
const int HASHER_JENKINS2 = 1024;
/* Методы */
public add(int $key): bool
public __construct(int $size, int $options = ?)
public delete(int $key): bool
public exists(int $key): bool
publicgetSize(): int
public static loadFromFile(string $filename, int $size = ?, int $options = ?): QuickHashIntSet
public static loadFromString(string $contents, int $size = ?, int $options = ?): QuickHashIntSet
public saveToFile(string $filename): void
}

Предопределённые константы

QuickHashIntSet::CHECK_FOR_DUPES
Если включено, то добавление повторяющихся элементов в набор (с помощью методов QuickHashIntSet::add() или QuickHashIntSet::loadFromFile()) приведёт к отбрасыванию этих элементов. Это займёт дополнительное время, поэтому опцию включают только при необходимости.
QuickHashIntSet::DO_NOT_USE_ZEND_ALLOC
Запрещает использование встроенного в PHP менеджера памяти для внутренних структур. Если опцию включили, используемая память не будет учитываться настройкой memory_limit.
QuickHashIntSet::HASHER_NO_HASH
Указывает, что не нужно использовать функцию хеширования, а вместо неё для поиска индекса в цепочке использовать модуль. Это не быстрее обычного хеширования и порождает больше коллизий.
QuickHashIntSet::HASHER_JENKINS1
Хеширующая функция по умолчанию.
QuickHashIntHash::HASHER_JENKINS2
Другой хеширующий алгоритм.

Содержание

Добавить

Примечания пользователей

Пользователи ещё не добавляли примечания для страницы
To Top