Практикуя многопоточность, я хотел просто создать приложение, которое могло бы вычислять все возможные комбинации набора символов (т. е. взламывать/сопоставлять методом грубой силы) и распределять работу между потоками, чтобы действительно измерить и воочию увидеть, как многопоточность может повлиять на время работы алгоритма в разных системах.
Алгоритм для расчета этого до сих пор был для меня большой проблемой. В недавнем потоке (What было бы эффективным способом добавить многопоточность в этот простой алгоритм?) Я, казалось, понял, что мне нужно было сделать (легко передать определенные части каждого диапазона символов для распределения работы), хотя алгоритм просто не работал, и Я недостаточно понимал сложность, чтобы исправить это в своем приложении.
Простым итеративным образом, как я мог бы вычислить каждую комбинацию заданного набора символов с определенной длиной (т.е. 5 в длину?)
в примере:
unsigned char range[] = "abcdefghijklmnopqrstuvwxyz0123456789";
brute_force(range, len); //character set, length of string to compute all combinations of
//...
Я был бы очень благодарен, если бы я избавился от некоторого стресса при поиске правильных концепций для этого.
abcde
совпадает сedcba
? - person Jim Mischel   schedule 30.04.2011len = 5
stackoverflow.com/questions/1749657/ - person jfs   schedule 30.04.2011