LeetCode Problem

How to Solve Add Binary

The Add Binary problem requires summing two binary strings and returning the result in binary format. It primarily combines string manipulation with binary math, which can be solved with an iterative or optimized approach.

GhostInterview Help

Need help with Add Binary without spending extra time grinding it?

GhostInterview can read Add Binary from a screenshot, generate the answer path, explain the complexity, and support solver-first interview workflows when you need direct help fast.

Screenshot Input

Capture the prompt fast instead of rewriting the problem by hand.

Answer + Complexity

Get the solution path, trade-offs, and complexity summary in one pass.

Stealth Workflow

Stay outside captured layers on supported screen-share workflows.

Problem #67Math plus StringReviewed 2026-03-07
Difficulty
Easy
Primary pattern
Math plus String
Answer-first problem summary
Step-by-step approach and complexity
GhostInterview solver workflow

The Add Binary problem requires summing two binary strings and returning the result in binary format. It primarily combines string manipulation with binary math, which can be solved with an iterative or optimized approach.

Problem Statement

You are given two binary strings a and b. Your task is to add them together and return the sum as a binary string. The binary strings may vary in length, but both consist only of '0' and '1' characters. The result should not contain leading zeros, except when the sum is zero.

To solve this problem, you can simulate the binary addition process, similar to how you would manually add binary digits. Start from the least significant bit and move towards the most significant, managing carryover as needed. The constraints indicate that the input strings can be large, so consider an efficient solution in both time and space.

Examples

Example 1

Input: a = "11", b = "1"

Output: "100"

Example details omitted.

Example 2

Input: a = "1010", b = "1011"

Output: "10101"

Example details omitted.

Constraints

  • 1 <= a.length, b.length <= 104
  • a and b consist only of '0' or '1' characters.
  • Each string does not contain leading zeros except for the zero itself.

Solution Approach

Simulate Binary Addition

The most direct way to solve this problem is by simulating binary addition from the least significant bit (rightmost). Traverse both strings from right to left, adding corresponding digits along with any carry from the previous step. If the sum of the digits and carry exceeds 1, update the carry for the next step and append the binary result. Continue until both strings are fully processed.

Optimize with String Operations

To handle the binary addition more efficiently, it is important to minimize string manipulations. Using a list to store intermediate results or directly building the result string as you go can reduce overhead. This approach also allows for more optimized memory usage, especially when dealing with long strings.

Leverage Bit Manipulation

While not strictly necessary, bitwise operations could be used to optimize the solution further. Using bitwise XOR and AND operators for addition and carry calculations can speed up the process in some cases, especially when handling very large binary strings. This approach, however, requires careful attention to carry propagation and string building.

Complexity Analysis

MetricValue
TimeDepends on the final approach
SpaceDepends on the final approach

The time complexity of this solution depends on the length of the longer binary string, resulting in O(max(m, n)), where m and n are the lengths of the input strings a and b. The space complexity is O(max(m, n)) due to the space required for storing the result, which may be up to the length of the longest string plus one for the carry.

What Interviewers Usually Probe

  • Do you handle carry properly when adding binary digits?
  • Can you optimize the solution for large input sizes?
  • Will you account for cases where the binary strings have different lengths?

Common Pitfalls or Variants

Common pitfalls

  • Ignoring the carry during addition can lead to incorrect results.
  • Not managing string length differences properly may cause out-of-bounds errors.
  • Forgetting to remove leading zeros from the final result can lead to invalid outputs.

Follow-up variants

  • Add Two Binary Strings with Overflow Handling
  • Multiply Binary Numbers
  • Convert Binary Sum to Decimal and Then Binary

How GhostInterview Helps

  • Capture input of binary strings and show intermediate steps for carry and sum processing.
  • Guide through the solution path with a detailed step-by-step explanation and time/space complexity breakdown.
  • Support screen-share workflows for binary string manipulation, carry handling, and optimization techniques.

Topic Pages

FAQ

How do you add two binary numbers without using built-in functions?

To add binary numbers manually, simulate the binary addition process starting from the rightmost bit, managing the carry as you go.

Can bitwise operations speed up the Add Binary solution?

Yes, bitwise operations like XOR and AND can be used to handle binary addition and carry calculations more efficiently, especially for large strings.

How should you handle carry in binary addition?

During binary addition, if the sum exceeds 1, a carry of 1 is passed to the next higher bit. Ensure this is managed for each pair of bits.

What are the time and space complexities for the Add Binary problem?

The time complexity is O(max(m, n)) where m and n are the lengths of the input strings. Space complexity is also O(max(m, n)) for storing the result.

What if the binary strings have different lengths?

If the binary strings have different lengths, align them by padding the shorter one with leading zeros, then proceed with the addition as usual.

GhostInterview Solver

Need direct help with Add Binary instead of spending more time grinding it?

Download GhostInterview when you want a LeetCode solver, not another long practice loop. Capture Add Binary from a screenshot, get the answer path and complexity, and use supported stealth workflows that stay outside captured layers.

Screenshot Input

Capture the prompt fast instead of rewriting the problem by hand.

Answer + Complexity

Get the solution path, trade-offs, and complexity summary in one pass.

Stealth Workflow

Stay outside captured layers on supported screen-share workflows.