算法基础:递归算法解读

算法基础:递归算法解读什么是递归递归一般是指在函数内部又调用了自身原理主要原理是在每次调用自身的时候,需要解决的任务会进一步简化或者理解为任务量变少;直到简化至一些基本的case,可以直接处理并返回而不再需要进一步简化的情况。

大家好,欢迎来到IT知识分享网。

什么是递归

递归一般是指在函数内部又调用了自身

原理

主要原理是在每次调用自身的时候,需要解决的任务会进一步简化或者理解为任务量变少;

直到简化至一些基本的case,可以直接处理并返回而不再需要进一步简化的情况。

算法实现的大体思路

  • 基本case逻辑,即在某些条件下不需要递归;可以直接解决的逻辑
  • 递推规则,将复杂任务拆解的规则,按照这个规则拆解,最终可以拆解到基本的case;

一般来说代码首先需要处理基本的case,然后是递归的调用;

对于稍复杂一点的问题,递归调用的返回值不能直接作为上一次的返回值,需要进一步处理,根据实际情况返回应该返回的值。

举例

给定一个链表,两两交换其中相邻的节点,并返回交换后的链表。

如:给定 1->2->3->4, 你应该返回 2->1->4->3 

代码实现如下:

算法基础:递归算法解读

递归代码

null

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/91074.html

(0)

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信