DDSA Solutions

2220. Minimum Bit Flips to Convert Number

Time: O(1)
Space: O(1)
Advertisement

Intuition

Minimum bit flips to convert start to goal. Count differing bits (XOR then popcount).

Algorithm

  1. 1Return Integer.bitCount(start ^ goal).

Common Pitfalls

  • XOR gives bits that differ. Count 1-bits in XOR result.
2220.cs
C#
// Approach: XOR start and goal; count set bits (number of differing bit positions).
// Time: O(1) Space: O(1)

public class Solution
{
    public int MinBitFlips(int start, int goal)
    {
        int flip = 0;
        for (int i = 0; i < 32; i++)
        {
            int sBit = (start >> i) & 1;
            int gBit = (goal >> i) & 1;
            if (sBit != gBit)
                flip++;
        }

        return flip;
    }
}
Advertisement
Was this solution helpful?