由于是因为觉得自己写了还是有那么一点子的代码,所以我现在想要做一点子随意总结,权属自己的乱说,当然大家可以看看,不过也没有什么太大的参考价值,写的都是自己做的代码,格式存在极不标准的情况,当然大家也可以当个笑话,那现在就开始正式的说法把
(一)递归函数
在我看来,在函数里面比较难的就是说是递归函数,递归函数的意思大概就是说,在函数体的内部再次调用本函数; 我们可以来几个例题先理解一下子,例如函数1+2+3+4+····+n;这个函数就可说是f(1)=1和f(n)=f(n-1)+1; 所以我们在设计函数的时候呢就可以这样子去设计
int found(int n){
if(n=1){
return 1;
}else{
return (found(n-1)+1);
}
再例如咱们来说一下子费波纳函数, 那什么是费波纳函数,即f(n)=1+1+2+3+5+8+、、、+n;即第n个数就是前两个数字之和 也就是说是n-1和n-2的和所以可以设计以下函数
int fab(int n){
if(n == 1){
return 1;
}else if(n == 2){
return 1;
}else{
return (fab(n-1)+fab(n-2)); \在这里呢需要注意的就是函数返回的一个情况
}
}
那么从第一个和第二个的例子里面就可以看出来,在函数的递归中呢就是引用公式就可以啦,是不是这样就很简答理解了,但是需要注意的是什么呢?我们 不仅要找到公式还要说就是说要找到一个输出的端口,例如我们第一题的输出端口n=1的时候第二题也一样,我们在写递归最终要的就是要找到一个函数的确切输出口。