Главная страница


ru.algorithms

 
 - RU.ALGORITHMS ----------------------------------------------------------------
 From : Sergey Politov                       2:5015/176.18  10 Jan 2002  06:08:52
 To : Sergey Popkov
 Subject : Re: дайте алгоритм, plz!
 -------------------------------------------------------------------------------- 
 
 
 До меня дошли слухи, что *09.01.02* *1:59:43* пролетало сообщение
 от Sergey к *All* про *"дайте алгоритм, plz!"*. И я решил вмешаться.
 
  SP>  имеется матрица, пусть 10x10, в которой заложены определеные
  SP> неповторяющиеся числа (целые числа), причем каждое ичсло в своей ячейке..
  SP> необходимо эти числа как бы размешать и поместить в матрицу (в другую,
  SP> для простоты) случайным образом..
 
   В данном случае лучше матрицу рассматривать как массив, т.е.
 b: array[1..10,1..10] of integer;
 a: array[1..100] of integer absolute b;
 так проще с ней работать. Hу и еще пара 
 d: array[1..10,1..10] of integer;
 c: array[1..100] of integer absolute d;
 Т.е. будем все переселять из a в c.
 
 сам алгоритм(без инициализации генератора случайных чисел, и п.р. лабудени)
 с:= a;
 for i:= 1 to 100 do
 begin
   j:= random(i)+1;
   f=n-i+1;
   if i<>j then
   begin                    //обмен с[f] и с[j] значениями, c[j] помещаем 
     c[f]:= c[f] xor c[j];  //в конец массива, откуда мы его больше не достанем
     c[j]:= c[f] xor c[j];
     c[f]:= c[f] xor c[j];
   end;
 end;
 Вот и все сложность как не трудно догадаться линейная, и никаких лишних
 зависаний.
 Если я нигде с индексами не наглючил.
 
 Искренне Ваш
                Sergey Politov
 
 --- WP/95 Rus 1.78 Релиз 1  Reg.
  * Origin: Человек - побочный продукт любви. (2:5015/176.18)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 дайте алгоритм, plz!   Sergey Popkov   09 Jan 2002 02:59:43 
 Hа: дайте алгоритм, plz!   Alex Chudnovsky   09 Jan 2002 14:44:12 
 дайте алгоритм, plz!   Andrew Plyako   10 Jan 2002 07:28:06 
 Re: дайте алгоритм, plz!   Sergey Politov   12 Jan 2002 05:43:26 
 Re: дайте алгоритм, plz!   Sergey Politov   10 Jan 2002 06:08:52 
 дайте алгоритм, plz!   Andrew Plyako   11 Jan 2002 01:30:44 
 Re: дайте алгоритм, plz!   Sergey Politov   12 Jan 2002 05:31:04 
 дайте алгоритм, plz!   Andrew Plyako   13 Jan 2002 01:49:00 
 Re: дайте алгоритм, plz!   Sergey Politov   14 Jan 2002 05:51:37 
 дайте алгоритм, plz!   Andrew Plyako   14 Jan 2002 16:15:44 
 Re: дайте алгоритм, plz!   Sergey Politov   15 Jan 2002 05:07:06 
 Re^2: дайте алгоритм, plz!   Sergey Politov   12 Jan 2002 09:35:44 
 Re: дайте алгоритм, plz!   Vasily Shmelev   10 Jan 2002 18:25:23 
 дайте алгоритм, plz!   Nickita A Startcev   10 Jan 2002 22:36:00 
 дайте алгоритм, plz!   Anton Dorofeev   11 Jan 2002 14:48:20 
Архивное /ru.algorithms/39911bce900d.html, оценка 2 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional