Duplicar posibles:
Creating multiple numbers with certain number of bits setdesplazamiento en modo bit para generar todas las permutaciones posibles en C
Estoy intentando escribir un código que pondrá a cada posible combinación de números en una matriz por desplazando los bits a través de.
Por ejemplo, yo quería encontrar todas las combinaciones posibles de 3 bits (donde el máximo de una dígito puede tener es 6) la matriz debe contener:
000111 001011 001101 001110 010011 010101 010110 011001 011010 011100 100011
Y así sucesivamente ...
Según lo que he interpretado, cuando el último bit de posición es 1, cambiamos el número por 1 (x >> 1) y agregamos un 1 al inicio. Sin embargo, no estoy seguro de cómo codificar el resto. Estoy usando C para escribir esto.
Además, hasta donde puedo decir que esta es una secuencia de colex, sin embargo, soy todo oídos si hay otra secuencia que me dará el mismo resultado final (matriz con todas las combinaciones posibles de k bits con una restricción de N).
Duplicado de [Creación de múltiples números con cierto número de bits establecidos] (http://stackoverflow.com/questions/506807/creating-multiple-numbers-with-certain-number-of-bits-set), [Generar todas las cadenas binarias de longitud n con k bits establecidos] (http://stackoverflow.com/questions/1851134/generate-all-binary-strings-of-length-n-with-k-bits-set). – outis