PDA

Просмотр полной версии : random array?


Sveta
13.12.2001, 14:53
Короче, у нас есть допустим массив a["a1","a2","a3","a4","a5"]
вот .... допустим мы объявляем массив b[]
далее мы для var i=0 пока i<a.length при i++
кладем в массив b некое число "a"+random(a.length)
Далее вот что надо сделать for m in a
надоть сделать типа того что if a[m]==b[m]
т.е. при совпадении переменных из обоих массивов заменить совпадающие переменные отсутствующими. короче, просто перетасовать надо....как, что-то я запуталась....

Nox Noctis
13.12.2001, 15:33
просто перетасовать ?
для одномерного массива вролне можно воспользоваться простым рабоче-крестьянским методом:

1
делаем копию массива "a" (его перетасовываем)
назовем ее например "aa"

2
b = []
for (i=0; aa.length; i++) {
num = Math.round(Math.random()*(aa.length-1));
b.push(aa[num]);
aa.splice(num, 1);
}

все собственно... получили рандомный массив "b" из элементов массива "a"

Sveta
13.12.2001, 15:50
Сенкс! Это то, что надо!!! :)
от и splice наконец то пригодился! :p