If the count of opening bracket is less than n then call the function recursively with the following parameters String s + {, count of opening bracket o + 1, count of closing bracket c, and n. code example
Example: Given an integer 'n'. Print all the possible pairs of 'n' balanced parentheses. The output strings should be printed in the sorted order considering '(' has higher value than ')'.
def generateParentheses(openBr, closeBr, n, s = []):
if closeBr == n:
print(''.join(s))
return
if closeBr < openBr:
s.append(')')
generateParentheses(openBr, closeBr+1, n, s)
s.pop()
if openBr < n:
s.append('(')
generateParentheses(openBr+1, closeBr, n, s)
s.pop()
return
n = int(input())
generateParentheses(0, 0, n)