int fib(int numb){
    vector<int> temp;
    int str;
    if(numb==0 || numb==1){
        return numb;
    }
    else{
        str=(fib(numb-1)+fib(numb-2));
        temp.push_back(str);
        return str;
    }
    for(int i=0;i<temp.size();i++){
    if(temp[i]==numb){
            return temp[i];
        }}


斐波那契函数,它可以工作,但是如何检查函数的for循环部分是否真的起作用?它是一种遍历方法,用于查找现有数字并将其返回,而不是处理另一个递归。

最佳答案

您的循环可能无法正常工作。它永远都行不通。因为没有办法进入循环。循环之前的每个代码路径均以return语句结束。

遍历您的代码,逐条语句,并亲自了解您的代码将永远不会到达循环。

关于c++ - 动态编程,遍历方法,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35795809/

10-10 06:18