递归算法

      递归时一种函数自我调用的现象,有点类似于循环,可以是直接调用也可以是通过其他函数间接调用函数本身。它可以简化一些问题的处理过程,比如、阶乘函数的实现,但同时也要注意递归函数过度使用时会导致栈溢出和内存空间开销大的问题。

图解递归实现过程

3.单链表的逆序输出——递归实现_递归

具体代码
//13.逆序输出单链表L(递归算法实现)
void Reverse_List(Linklist L){
	//链表为空,终止输出
	if (L == NULL) return;
	if (L != NULL){
		Reverse_List(L->next);
		printf("%d ", L->data);
	}
}

main函数

int main(){
	//逆序输出链表-递归
	Reverse_List(L->next);
}
运行结果
33 3 6 23 34 //原链表
34 23 6 3 33 //输出结果
请按任意键继续. . .

作者:QuestoQ