![]() |
Массив из уникальных случайных чисел.
Добрый день.
Я тут запутался. Хочу чтобы добрые люди показали выход. Требуется в массив из ста элементоа загнать числа от одного до ста, но чтобы они не повторялись среди элементов массива. Знаю задача простая, но в ней погряз. Вроде бы принцып прост. Сгенерил число. Побежал по элементам если встретил, генеришь снова, если нет следующий. Но выстроить в грамотный код немогу. |
1. Сгенерировать временный массив Temp чисел 1-100
2. В цикле брать случайное число R в пределах длины Temp. 3. Взять элемент с индексом R из Temp, поместить значение элемента в массив случайных чисел Rand и удалить элемент R из Temp (длинна массива изменится). И так до конца цикла. |
Спасибо!
|
Код AS3:
|
вот вам вариант без массива(генерация псевдослучайной последовательности):
Код AS3:
|
Цитата:
|
Код AS3:
|
Обычный вопрос на собеседовании, который решается и реализуется минуты за 3.
Алгоритм тут простой, нужно: 1. Сгенерировать массив из 100 последовательных чисел. 2. Брать первый элемент массива, генерить случайное число от 1 до 100, и менять местами первый элемент с элементом со случайно сгенерированным номером, и так далее. И не нужно 2-х массивов. Не нужно изобретать свои алгоритмы генерации случайных чисел. |
Код:
temp = new Array(); |
mult2002, для кода нужно использовать теги форматирования кода.
|
| Часовой пояс GMT +4, время: 00:51. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.