Получить X уникальных номеров из набора

Какой самый элегантный способ получить уникальные случайные числа, которые я думаю?

В настоящий момент мне нужны случайные уникальные числа, я проверяю, не являются ли они уникальными, используя цикл while, чтобы узнать, использовал ли я случайное число раньше.

Так это выглядит так:

int n = getRandomNumber % [Array Size];

for each ( Previously used n in list)
    Check if I've used n before, if I have...try again.

Есть много способов решить эту линейную задачу O (n / 2), мне просто интересно, есть ли элегантный способ ее решения. Попытка вспомнить MATH115 «Дискретная математика» и вспомнить, рассматривал ли старый лектор что-либо, связанное с кажущейся тривиальной проблемой.

Сейчас я не могу думать, поэтому, возможно, когда у меня будет немного кофеина, мой мозг начнет анализировать его с помощью повышенного IQ, вызванного кофе.

Ответы на вопрос(4)

Ваш ответ на вопрос