浅浅学习一下递归和迭代,递归和迭代的区别和一些细小部分知识点

文章目录


d3d7d04b1e8e428a872a5b282a461262.png何为递归

程序调用自身的编程技巧成为递归。

递归作为一种算法在程序设计语言中广泛应用。一个过程或函数在其定义或说明中有直接或间接调用自身的一种方法,它通常把一个大型复杂的问题层层转化为一个原问题相似的规模较小的问题求解。

递归的主要思考方式在于:把大事化小。


9443491d21bb45008f45497c02abe67f.png递归条件

         514ec7d715954ca0b8d7e2a455da31ec.png:存在限制条件,当满足这个限制条件的时候,递归便不再继续。

         514ec7d715954ca0b8d7e2a455da31ec.png:每次递归调用之后越来越接近这个限制条件。

是不是这么说,还是不太懂,木急木急,让我给你打一个代码你就懂了

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5bS9Xzg1,size_20,color_FFFFFF,t_70,g_se,x_16

 有没有稍微懂一点了?


1f786914bee74d37a4d22d53524b83c4.png,代码讲解

          19f2ad3aa91a94629925c4591aeca9c21.png.递归代码讲解

一个整形值,按顺序打印它的每一位。输入:1234, 输出:1 2 3  4

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5bS9Xzg1,size_20,color_FFFFFF,t_70,g_se,x_16

是不是还是有点不懂了?那让我来给你画画图,讲讲这个代码是咋运行的?

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5bS9Xzg1,size_20,color_FFFFFF,t_70,g_se,x_16 


 29f2ad3aa91a94629925c4591aeca9c21.png.迭代代码讲解

迭代法,是一种不断用变量的旧值递推新值的过程(在我看来就是循环)

一到十的累加:

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5bS9Xzg1,size_20,color_FFFFFF,t_70,g_se,x_16

莫急莫急,哪怕懂,也看看我的画图讲解6046a7f3acac4b2ca266ea2d882476e5.png 

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5bS9Xzg1,size_20,color_FFFFFF,t_70,g_se,x_16 


总结:

是不是稍微懂了一点啥叫递归和迭代了,递归挺难的,但多练练题就会了,加油!!!! 

 

 

 

  • 8
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 6
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值