在 C 中打印所有 32 位数字序列的函数
Function that prints all sequences of 32 digits in C
抱歉这个问题,但我正在尝试优化打印所有 32 位数字序列的 C 函数,这样序列中的每个数字都是 0 或 1,例如:
00000000000000000000000000000000
...
01010101010101010101010101010101
...
01000000010000000100000001000000
我确实想出了一个解决方案,但是它有3个for循环嵌套在一起,而且非常耗时,我想知道是否可以有一个更简单的算法。
感谢您的帮助
安德里亚
大家好,感谢您的回答:)最后我在您的帮助下使用了解决方案:
作废 binary_permutation(作废)
{
unsigned int i=0;
char str[32];
do{
itoa(i++, str, 2);
printf("binary: %s\n", str);
}
while (i);
}
再次感谢
安德里亚
您可以使用递归或回溯,它可以为您省去嵌套循环的所有痛苦(是的,此功能需要时间 运行!)
This article 很好地解释了这一点。
祝你好运!
抱歉这个问题,但我正在尝试优化打印所有 32 位数字序列的 C 函数,这样序列中的每个数字都是 0 或 1,例如:
00000000000000000000000000000000 ... 01010101010101010101010101010101 ... 01000000010000000100000001000000
我确实想出了一个解决方案,但是它有3个for循环嵌套在一起,而且非常耗时,我想知道是否可以有一个更简单的算法。
感谢您的帮助
安德里亚
大家好,感谢您的回答:)最后我在您的帮助下使用了解决方案:
作废 binary_permutation(作废) {
unsigned int i=0;
char str[32];
do{
itoa(i++, str, 2);
printf("binary: %s\n", str);
}
while (i);
}
再次感谢
安德里亚
您可以使用递归或回溯,它可以为您省去嵌套循环的所有痛苦(是的,此功能需要时间 运行!) This article 很好地解释了这一点。 祝你好运!