C++ 递归函数

一 递归函数

递归函数(Recursive Function)即自调用函数,即在函数体内有直接或间接地自己调用自己的语句。

大多数递归函数都能够用非递归函数代替。

例如:求两个整数a,b的最大公约数。

算法描述:

大多数递归函数都能用非递归函数代替。

例如:求两个整数a,b的最大公约数

递归:

非递归:

使用递归函数的目的是简化程序设计,提高程序的可读性,但增加系统开销。

自调用过程函数在必须设置某些条件,当条件成立时终止自调用过程,并使程序控制逐步从函数中返回。

相关推荐
m0_720245012 小时前
1543.统计好三元组(简单)
开发语言·算法
叠层归一研究院3 小时前
AGI 系统(八):符号范畴嵌入函子 — SymCat ↪ C_M107 严格化
c语言·开发语言·人工智能·算法·transformer·agi
明朝百晓生3 小时前
Deep RL learning[2026/8]
开发语言·javascript·人工智能
weixin-a153003083164 小时前
python-装饰器
开发语言·python
我的xiaodoujiao4 小时前
快速学习Python基础知识详细图文教程17--类型注解和断点调试
开发语言·python·学习·测试工具
leoZ2316 小时前
AI 辅助开发的五道坎
开发语言·人工智能·视觉检测·bert·php·超分辨率重建·openvino
会周易的程序员7 小时前
aiDgePLC — IEC61131-3 ST PLC 虚拟机调试与运行环境
c++·物联网·虚拟机·st·工业协议·iec61131·梯形图
程序员老陆7 小时前
Qt的QThread::usleep和FFmpeg的libavutil模块的av_usleep哪个精度高一些?
开发语言·qt·ffmpeg·音视频
2601_963869957 小时前
【计算机毕业设计】基于Java的相框定制系统的设计与实现
java·开发语言·课程设计
名字还没想好☜8 小时前
Go 的 unsafe.Pointer 实战:零拷贝 []byte↔string 转换与三条铁律
开发语言·后端·golang·go·unsafe