调用形成字符串的递归函数后返回一个结果列表

时间:2019-12-15 18:16:11

标签: python python-3.x

在调用递归函数时,使用字符串形式-如何返回字符串列表,而不是返回属于不同调用的单独字符串?

例如:

def printer_helper(str, pos, n, open, close):
  if (close == n):
    for i in str:
      print(i, end="")
    print()
    return
  else:
    if (open > close):
      str[pos] = '>'
      printer_helper(str, pos + 1, n, open, close + 1)
    if (open < n):
      str[pos] = '<'
      printer_helper(str, pos + 1, n, open + 1, close)


printer(['', '', '', '', '', ''],2)

输出为

<> <>

<< >>

尝试在第一个if之前初始化一个列表(lst = []),并添加lst.append(i)而不是print(i),但我什么也没有。 我希望得到的是: [<> <>,​​<< >>]

示例的来源: https://www.geeksforgeeks.org/print-all-combinations-of-balanced-parentheses/

0 个答案:

没有答案