LeetCode 40. Combination Sum II



Given a collection of candidate numbers (C) and a target number (T), find all unique combinations in C where the candidate numbers sums to T.

Each number in C may only be used once in the combination.


  • All numbers (including target) will be positive integers.
  • The solution set must not contain duplicate combinations.

For example, given candidate set [10, 1, 2, 7, 6, 1, 5] and target 8,
A solution set is:


Combinations are subsets of the candidate array. We can use depth-first search to find all combinations of the input array. First, sort candidates array into ascending order.
Second, conduct a depth-first search to visit each combination of the input array.

A depth-first search function would be:
Whenever adding an element to the combination, we reduce the target.
If the remaining target value is equal to 0, we add the current combination to the result list.
Then, recursively find all combinations for the remaining target value from the remaining elements.

Video Tutorial

Java Solution

Leave a Reply

Your email address will not be published. Required fields are marked *