У меня есть массив в моем PHP-приложении, и мне нужно разработать функцию, которая, учитывая массив и произвольный строковый пароль, будет выводить перемешанное подмножество большого массива.Подмножество и порядок вывода массива должны быть одинаковыми каждый раз, когда для вызова функции используется один и тот же пароль.
Я могу сгенерировать псевдослучайное число на основе пароля, взяв целочисленное значение хешакак MD5, но я не уверен, как я могу использовать это для того, чтобы:
1) Выберите X (либо фиксированное число, либо, предпочтительно, число, выбранное хешем в данном диапазоне), случайные элементы измассив на основе хеша
2) Перемешать / переставить эти элементы в подмножество на основе хеша
Для моей реализации допустимы коллизии, так как массив имеет относительно небольшой размер.Это довольно интересная проблема - кто-нибудь знает, как ее решить?