单链表之递归算法

来源:互联网 发布:list和数组的区别 编辑:程序博客网 时间:2024/05/17 05:14

           1.递归定义

               定义:用一个概念本身直接或间接的定义它自己。

               递归定义必须满足以下两个条件:

               (1).至少有一条初始定义是非递归的。

               (2).由已知函数值逐步递推计算出未知函数值。

       2.单链表之递归结构

                 单链表是递归结构,每个结点的next域指向有其后诸结点组成的一条单链表,最后一个结点的next链指向空链表。因此,遍历等操作也可以采取递归算法。例如,递归的toString()方法声明如下:        

public String toString(){return"("+this.toString(this.head)+")";}public String toString(Node<E> p){//递归算法if(p!=null){return p.data.toString()+","+this.toString(p.next);//递归调用,相当于p=p.next;}return "";}


原创粉丝点击