-1
对于我的递归考试,我必须编写一个递归函数来遍历链表,并删除所有不包含某些数据的节点,并计算在C++中删除的节点数。我不允许使用静态函数,静态局部变量或全局变量。我该怎么做呢?递归计算递归函数中发生的循环数,而不使用静态局部变量,全局变量或静态函数?
具体使用的函数是:INT remove_except(节点* &头,节点* &尾),并且它的直线链表上使用。我无法找到任何方法来计算删除的节点数量,而不使用上面列出的三种方法之一。
免费的线索:请问这是由一个呼叫者称为函数会返回* *的值到主叫方,像是某种计数器,或什么的? –
这里没有代码,只是一个方法签名。我们应该从中看出什么?我也很困惑你为什么传递指针的引用。 – tadman
@SamVarshavchik我想你应该说我应该返回一些名为counter的整数,并在每次循环发生时递增?但我不知道如何在不改变函数原型的情况下在递归函数中执行此操作,或者创建一个静态变量或全局变量,这两者我都不允许这样做。 –