问答题 已知递归函数F(m)(其中DIV为整除):
【正确答案】正确答案:递归算法如下: void recurse(int m,int&s) {if(m<0)return ERROR; if(m==0)s=1; else{recurse(m/2,r);s=m*r;} } 非递归算法如下: void nonrecure(int m,int&s) {typedef struct{int a,b;}node; node sa[100]; if(m<0)return; if(m==0)s=1; else{while(m!=0)//初始化top=0 {top++;sa[top].a=m;sa[top].b=m/2;m=sa[top].b;) S=1; while(top)S=S。sa[top-一].a; }//else }
【答案解析】