Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 08.07.2012, 10:41   #1
kakawkin
Форумчанин
 
Регистрация: 21.09.2009
Сообщений: 431
По умолчанию Не могу разобраться в алгоритме

Суть программы у меня другая, так что я опишу проще что бы ясно стало всем.
Даны буквы в хаотичном порядке s:='zhemsop';
Даны числа в хаотичном порядке k:='8193815';
Их надо "скрестить":
Код:
for i:=1 to length(s) do
 for j:=1 to length(k) do
  result:=s[i]+k[j];
 end;
end;
Так они "скрестятся".
Но в моем случае надо таким образом накрестить ~3000 + очень много
И не пойму как организовать в данной ситуации многопоточность.

Последний раз редактировалось kakawkin; 08.07.2012 в 10:46.
kakawkin вне форума Ответить с цитированием
Старый 08.07.2012, 14:11   #2
s-andriano
Старожил
 
Аватар для s-andriano
 
Регистрация: 08.04.2012
Сообщений: 3,229
По умолчанию

Для 3000 многопоточность будет только вредить, т.к. приведет к увеличению времени выполнения за счет накладных расходов на организацию потоков и синхронизацию между ними. Вряд ли имеет смысл использовать многопоточность даже для 3000000.

А вообще, задача прекрасно распараллеливается, так что методически с многопоточностью проблем быть не должно. Например, берешь 100 потоков, в каждом цикл длиной 30.

Последний раз редактировалось s-andriano; 08.07.2012 в 14:14.
s-andriano вне форума Ответить с цитированием
Старый 08.07.2012, 14:34   #3
kakawkin
Форумчанин
 
Регистрация: 21.09.2009
Сообщений: 431
По умолчанию

почему же будет хуже ? Ведь мой алгоритм похож на алгоритмы брутфорсов - они же умеют работать многопоточно
kakawkin вне форума Ответить с цитированием
Старый 08.07.2012, 15:00   #4
Прик
Форумчанин
 
Регистрация: 08.09.2010
Сообщений: 880
По умолчанию

Цитата:
Ведь мой алгоритм похож на алгоритмы брутфорсов
Откуда такая уверенность? Программ, использующих метод для полного перебора всех вариантов, очень много и не факт, что все они построены по одной единственной схеме.
Цитата:
они же умеют работать многопоточно
А кто бы сомневался.
А что, для вас 100 потоков одновременного выполнения - это не многопоточность?
s-andriano прав - будет только хуже.
Почитать все о потоках можно здесь
Прик вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Нужно разобраться в алгоритме. ladyanna Помощь студентам 0 03.06.2012 16:54
не могу разобраться! Apsalon Microsoft Office Excel 1 28.12.2010 18:54
Не могу разобраться Lokin Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 0 22.03.2010 22:45