|
|
ru.algorithms- RU.ALGORITHMS ---------------------------------------------------------------- From : OLS 2:5020/400 30 Aug 2001 09:02:22 To : Abbat Subject : Re: Hужно решение --------------------------------------------------------------------------------
> Есть массив целых чисел от 0 до N (на практике N не больше 100). Числа в
> массиве расположенны по порядку (0-100). Требуется перемешать массив
> произвольным образом. Скорость критична (счет идет на ms).
вариант 1
ГПСЧ на скремблере
из каждой пары чисел (x,y) из диапазона (0..N-1) поменять местами M[x] и
M[y]
повторить N*3/4 раз
все реализуется на ассемблере за 20 команд
вариант 2 : более медленнее и длиннее, но надежнее
ГПСЧ на скремблере
под массивом создается второй, связанный с ним такого же размера из ПСЧ
дальше сортировка второго массива (QuickSort+прямое включение) синхронно
с первым - в результате первый отсортирован
OLS
--- ifmail v.2.15dev5
* Origin: Golden Telecom (2:5020/400)
Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.algorithms/8990730b4d3d.html, оценка из 5, голосов 10
|