一度に1ビットずつ反転することにより、最大kビットが設定されているすべてのnビットの非負の整数を反復処理する効率的な方法を探しています。
最大で k ビットが設定された n ビットの非負の整数すべてを反復処理するために必要なビット フリップの最小数は?
k = n の場合、つまり、すべての n ビットの非負の整数を反復処理したい場合は、グレイ コードを使用できます。これには、新しい数値を取得するために 1 ビットだけを変更するという優れた特性があります。ただし、これは通常、k < n の場合、k ビットを超える整数を使用します。