Когда пользователь добавляет новый элемент в мою систему, я хочу создать уникальный не приращающийся псевдослучайный 7-значный код для этого элемента.Количество созданных элементов будет исчисляться только тысячами (<10 000). </p>
Поскольку он должен быть уникальным и никакие два элемента не будут иметь одинаковую информацию, я мог бы использовать хеш, но это должен бытькод, которым они могут поделиться с другими людьми - отсюда и 7 цифр.
Моя первоначальная мысль заключалась в том, чтобы просто зациклить генерацию случайного числа, убедиться, что оно еще не использовалось, и, если оно было, промыть и повторить,Я думаю, что это разумное, если неприятное решение, учитывая низкую вероятность столкновений.
Ответы на на этот вопрос предлагают создать список всех неиспользуемых чисел и перемешать их.Возможно, я мог бы сохранить такой список в базе данных, но мы говорим 10 000 000 записей о чем-то относительно редком.
У кого-нибудь есть лучший способ?