递归的三大要素
第一要素:明确你这个函数想要干什么
即函数的功能是什么
第二要素:寻找递归结束条件
即找出当参数为啥值时,结束递归,把结果返回
第三要素:找出函数的等价关系式
即不断缩小参数的范围
反转链表
第一步 明确函数的功能
假设函数 reverseList(head) 的功能是反转但链表,其中 head 表示链表的头节点。代码如下:
Node reverseList(Node head){
}
第二步 寻找结束条件
当链表只有一个节点,或者如果是空表的话,你应该知道结果吧?直接啥也不用干,直接把 head 返回呗。代码如下:
Node reverseList(Node head)