C++ 如何编写递归函数的方法定义?

C++ 如何编写递归函数的方法定义?,c++,data-structures,C++,Data Structures,Printer_Helper是一个递归函数,用于打印链接列表的内容 struct Node { string data; Node *next; } void List::print() { Print_Helper(head); } 如何编写递归函数的方法定义?递归基本上是这样工作的: 出现问题(打印节点) 问题的一部分是为当前问题的一小部分解决相同的问题(打印子节点) 在某一点上,不存在更小的问题,您可以停止解决(不再有子节点) 在这种情况下,其工作原理如下

Printer_Helper是一个递归函数,用于打印链接列表的内容

struct Node
{
    string data;
    Node *next;
}

void List::print() 
{
    Print_Helper(head);
}

如何编写递归函数的方法定义?

递归基本上是这样工作的:

  • 出现问题(打印节点)
  • 问题的一部分是为当前问题的一小部分解决相同的问题(打印子节点)
  • 在某一点上,不存在更小的问题,您可以停止解决(不再有子节点)
在这种情况下,其工作原理如下:

print content of current node
if there are any child nodes:
    for each child node:
        call this function with the child node

使用基本情况和递归调用?有很多递归函数的例子可以帮助你。你试过什么?这里不鼓励仅仅询问如何做某事或询问代码。但是如果你展示你的尝试和你的问题所在,你可能会得到答案。