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


ru.algorithms

 
 - RU.ALGORITHMS ----------------------------------------------------------------
 From : Dmitriy Gerasimenko                  2:5020/400     23 Jul 2002  11:22:25
 To : Eugene Anuchin
 Subject : Re: Перебор чисел
 -------------------------------------------------------------------------------- 
 
 
 Hi, Eugene!
 
 >  DG> У меня подозрения, что твой алгоритм  не разрешает размножаться
 >  DG> символам в исходной строке, то есть он другой. Мой алгоритм похож на
 >  DG> электросчётчик, или на спидометр в автомобиле если угодно.
 >  DG> Соответсвенно, по моёй формуле количество перестановок твоего числа
 
 "0123456789" =
 
 >  DG> 10^10
 
 > EA > А какой тогда здесь вообще алгоритм?!
 > EA > Просто пробегаем все значения от 0 до 10^10-1 (0000000000-9999999999)
 
 А кто вообще говорил что это должны быть обязательно числа ???........
 Hикто вроде не говорил! Всё немного сложнее и интереснее чем кажется.
 
 Для твоего числа - "0123456789" можно конечно цикл организовать . Это верно.
 А для чисел: "45689", "987540", "98763210" т.е. у тех у которых числа не
 попорядку,
 как прикажешь цикл организовывать ???!!
 А для символов: "KADY", "WOUCJKB", "QWERTY" организовать цикл т.е.
 "пробежать"
 тоже не получится!
 
 Hу а коли так! То цикл тут не поможет, и применять следует ПЕРЕСТАHОВКУ!
 
 > EA > А какой тогда здесь вообще алгоритм?!
 
 Hу а если применить следует ПЕРЕСТАHОВКУ, то это ни что иное
 как алгоритм перестановки.
 
  EA> Для строки '0123456789' выдает честных 3628800
  EA> перестановок менее чем за секунду (ессно без вывода на консоль)
 > EA> Как это нет?!!! Печать идет на стандартное устройство вывода (по
 
 умолчанию -
 
 > EA> консоль). Можно перенаправить в файл (перестановки.com > отчет.txt)
 
 Тебя не понять, сначала ты пишешь что вывода на консоль нет, потом ,что
 есть!? Определись!
 
 Далее...
 хорошо, вот то, что ты имеешь в виду, но не имею в виду я:
 это БЕЗ рекурсии, но есть и С рекурсией....
 //--------------------------------------------------------------------------
 ---------------------------------------------------
 #include <stdlib.h>
 #include <conio.h>
 #include <stdio.h>
 #include <string.h>
 
 void reconstruct(char *s)
 {
   long   i,t;
   char *as, *bs, *cs;
   char *dup_str;
 
   as = bs = s;
   i = 0;
 
   dup_str = strdup(s);
 
   do
   {
  while (*++bs)
  {
   t = *as;
   *as = *bs;
   as++;
   *as = t;
   fprintf(stdout, "%d\t: %s\n", ++i, s);
  }
  as = bs = s;
 
   } while (strcmp(dup_str, s) != 0);
 
   free(dup_str);
 }
 
 int main(int c, char **argv)
 {
   if (c <= 1)
   {
  fprintf(stderr, "Bad argument. [%s [string]]\n", argv[0]);
  return 0;
   }
 
   clrscr();
 
   reconstruct( argv[1] );
 
   return 0;
 }
 //--------------------------------------------------------------------------
 ---------------------------------------------------
 Результат вывода для числа:
 [1234]
 
 1 : 2134
 2 : 2314
 3 : 2341
 4 : 3241
 5 : 3421
 6 : 3412
 7 : 4312
 8 : 4132
 9 : 4123
 10 : 1423
 11 : 1243
 12 : 1234
 //--------------------------------------------------------------------------
 ---------------------------------------------------
 
 Hа сим заканчиваю...
 
 ..... алгоритмы разные нужны, алгоритмы разные важны.............
 --- ifmail v.2.15dev5
  * Origin: UNKNOWN (2:5020/400)
 
 

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

 Тема:    Автор:    Дата:  
 Перебор чисел   Dmitriy Gerasimenko   19 Jul 2002 14:19:40 
 Re: Перебор чисел   Andrey Belyakov   19 Jul 2002 18:52:10 
 Re: Перебор чисел   Dmitriy Gerasimenko   22 Jul 2002 09:08:25 
 Перебор чисел   Georgy Plechanov   22 Jul 2002 11:30:56 
 Re: Пеpебоp чисел   Mike Girkin   19 Jul 2002 19:44:34 
 Перебор чисел   Eugene Anuchin   21 Jul 2002 01:30:04 
 Re: Перебор чисел   Dmitriy Gerasimenko   22 Jul 2002 09:08:26 
 Перебор чисел   Eugene Anuchin   23 Jul 2002 03:03:31 
 Re: Перебор чисел   Dmitriy Gerasimenko   23 Jul 2002 11:22:25 
 Пеpебоp чисел   Alexander Hritonenkov   23 Jul 2002 13:12:42 
 Re: Пеpебоp чисел   Dmitriy Gerasimenko   23 Jul 2002 14:51:09 
 Пеpебоp чисел   Alexander Hritonenkov   23 Jul 2002 18:09:20 
 Re: Пеpебоp чисел   Dmitriy Gerasimenko   23 Jul 2002 14:51:12 
 Re: Перебор чисел   Andrew Ezhguroff   23 Jul 2002 14:24:31 
 Re: Перебор чисел   Dmitriy Gerasimenko   23 Jul 2002 14:51:09 
 Re: Перебор чисел   Andrew Ezhguroff   24 Jul 2002 01:43:03 
 Re: Перебор чисел   Dmitriy Gerasimenko   26 Jul 2002 08:43:38 
 Re: Пеpебоp чисел   Mike Girkin   23 Jul 2002 15:26:22 
 Перебор чисел   Eugene Anuchin   24 Jul 2002 00:12:05 
 Re: Перебор чисел   Dmitriy Gerasimenko   24 Jul 2002 10:07:18 
 Перебор чисел   Eugene Anuchin   25 Jul 2002 00:50:07 
 Re: Перебор чисел   Dmitriy Gerasimenko   25 Jul 2002 09:00:59 
 [*] Перебор чисел   Comoderator Of Ru Algorithms   25 Jul 2002 16:30:12 
 Re: Пеpебоp чисел   Anatoly Svishev   22 Jul 2002 23:31:02 
 Re: Пеpебоp чисел   Dmitriy Gerasimenko   23 Jul 2002 11:22:25 
Архивное /ru.algorithms/8968f10f0885.html, оценка 2 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional