# Minimum number of bit-flips to enumerate all bit-strings

If you have an $n$-bit binary string initialised in $000...000$, and at each step you are allowed to flip a single bit, what is the minimum number of flips required to have arrived at every possible $n$-bit binary string?

The Gray code enumerates all possible strings with single flips, so $2^n$.