Back to Practice Dashboard
Top 150 InterviewEasy

Generate Parentheses

Learn how to solve the 'Generate Parentheses' problem. This detailed resource details brute force and optimized approaches.

Problem Statement

Easy

Given n pairs of parentheses, write a function to generate all combinations of well-formed parentheses.

Write a function generateParenthesis(n: int) -> List[str].

Constraints
  • 1 <= n <= 8

Examples

Example 1
Input
n = 3
Output
["((()))", "(()())", "(())()", "()(())", "()()()"]
Explanation

All 5 valid combinations of 3 pairs of parentheses.

Example 2
Input
n = 1
Output
["()"]
Explanation

Only one valid combination with 1 pair.

Need a Hint?
Analyze the input constraints. Try sorting first (O(n log n)) or using a hash map/set to track seen elements in O(n) time.
Edge Cases to Watch
  • Empty list or null input variables
  • Single item lists/arrays
  • Extremely large input bounds causing integer or stack overflow

Ready to Solve?

Open the problem in PyRun's browser-based Python editor. Your code runs fully offline — no server required.

Open in Editor