Вниз
Скачать: CL | DM;

Перемешать массив   Найти похожие ветки 

← →
Vladislav ©   (2002-07-25 12:12) [0]

Как быстрее всего перемешать массив?


← →
RV ©   (2002-07-25 12:30) [1]

смотря какой массив
смотря что понимать под перемешанным/неперемешанным массивом


← →
Viewer   (2002-07-25 12:39) [2]

Для перемешиванния в случайном порядке использовать случайный подход.
Случайно выбирать i,j из диапазона и обменивать значения.

Для "неслучайного" подхода взять два близких простых числа A,B и с их шагом циклически пробежаться несколько раз по массиву обменивая ячейки с индексами кратными этим числам.


← →
eSKey   (2002-07-25 12:44) [3]

А поиском по форуму воспользоваться трудно? Эта тема уже не первый раз обсуждается и имеет простейшее решение.


← →
RV ©   (2002-07-25 13:05) [4]

массив исходный (неперемешанный?)
a[1]=1
a[2]=2
..
a[n]=n

массив ( перемешанный?)
a[1]=n
a[2]=2
..
a[n]=1

с какого момента массив считается перемешанным?
-----
один волос - не борода
2 - не борода
3 - не борода
...
100000 - борода

сколько волос уже борода?


← →
Vladislav ©   (2002-07-25 13:14) [5]

for i := 1 to High( Numbers ) do Numbers[ i ] := i;
for i := High( Numbers ) downto 1 do begin
R := Random( i );
S := Numbers[R];
Numbers[R] := Numbers[i];
Numbers[i] := S;
end;


← →
RV ©   (2002-07-25 13:22) [6]

можно до половины цикл сделать
брать рандомом елемент и менять с соответствующим из второй половины



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.01 c
1-24079
U-Rustam
2002-07-26 13:17
2002.08.08
Перевод из Delphi 3 в Delphi 5


6-24149
Delphi5.01
2002-05-28 07:16
2002.08.08
Считывание информации с FTP сервера.


6-24160
начинающий програмер
2002-05-24 22:29
2002.08.08
Баннеры


14-24170
VS2001
2002-07-04 06:41
2002.08.08
У кого нибудь есть откомпилированные DesignEditors, DesignIntf ..


3-23914
FLIZ
2002-07-18 10:54
2002.08.08
Как выполнить V.Basic-ский код, хранящейся в базе Access ?




   Наверх