Перебор двоичных комбинаций.

daxak

Новичок
Перебор двоичных комбинаций.

Здравствуте Все... Такой вопрос возник...
Сижу целый день ничего особо умного в голову не приходит :)

Нужно перебрать все возможные комбинации 0(нулей) и 1(едениц)
, но так чтобы количество едениц и длина строки были переменные...

т.е. скажем длина строки 5, количество едениц 3 =>
00111
01110
11100
10101
11001
10011
...............

Может кто поможет с реализацией?
 

daxak

Новичок
zerkms
а как определить что в числе которое мы decbin именно 3 еденицы? А если числа будут 40-вой итерации и с 10-ю еденицами? Мы их циклом не постареим переберать?
+ к этому помоему числа например скажем 98 и 112 в бине имеют одинаковую разрядность в два байта т.е. 8 итераций
 

dr-sm

Новичок
длинна строки - M (максимальный показатель степени)
количество едениц - N.

число X = sum(i=1,N; 2^x).
для всех из х, x <= M, x уникально.
осталось подумать, как генерить вектор x.
я думаю ты сможешь.
 

fixxxer

К.О.
Партнер клуба
в универе чтоли задали :D

практического смысла не вижу в упор

а если задали, то наверняка таки на побитовую работу, а не на строки...

хотя при чем тут тогда php?.. ;)
 

daxak

Новичок
fixxxer
php тут при том, что на чём писать пофигу, а вот реализация работы по сокету и корпоративность приложения возростает в разы :)

К стати...
ОСНОВНЫМ критерием перебора является его скорость, т.е. перебор чисел в цыкле ОТПАДАЕТ...
 

daxak

Новичок
Lightning
Рекурсия устраивает... но не получается реализовать... просто уже перебрал столько вариантов, что мозг отказывается работать :)
скорость перебора какая будет скажем 40-вой итерации?
 

Lightning

Трудоголик
Что значит не получается реализовать? Как именно ты реализовываешь?
 

Beavis

Banned
а, так это тебе нужен аглоритм перебора всех возможных перестановок.. поищи в нете, уже есть готовые
 

dr-sm

Новичок
daxak мой вариант самый быстрый, не дошло штоле как делать, пояснить?
 

daxak

Новичок
dr-sm
С удовольствием бы послушал... :) и думаю что ни один я :)
 

rotoZOOM

ACM maniac
daxak почему за тебя должны решать твою задачу? Если не можешь придумать решение сам, посмотри тут.
Sherman ты ниче не путаешь?
 

daxak

Новичок
rotoZOOM
За меня не ДОЛЖНЫ решать! Мне пока никто здесь ничего не должен! Я просил помощи! Если Вы например не знаете что такое стратокастер, а я попрошу Вас мне его сделать какие действия с вашей стороны будут??? А по ссылка которую Вы мне дали я уже был, но у меня не так много времени (*а вернее его у меня нет совсем- по семейным обстоятельствам) для въезжание в данный материал...
 
Сверху