迭代与递归的区别

本文对比了迭代与递归的特点,介绍了递归的基本原理,并通过阶乘的例子展示了递归的实现方式。提醒开发者注意递归的使用频率以避免内存溢出。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

迭代的特点:迭代是重复过程的活动,每一次对过程的重复称为一次“迭代”,每一次迭代得到的结果会作为下一次迭代的初始值。

递归的特点:在方法运算的内部调用方法本身

使用递归的注意事项:递归的次数要尽可能的少,因为通过断点运行可以看出每次递归都会在内存中创建一个新的递归方法,次数过多会导致内存溢出


最简单的递归例子--阶乘

public class JieChengDemo {
	public static void main(String[] args) {
		System.out.println(jieCheng(6));
	}
	public static long jieCheng(long n) {
		if(n==1) {
			return 1;
		}else {
		return n*jieCheng(n-1);
		}
	}
}

上面程序断点运行,可以看出6的阶乘就在内存中创建了6个jieCheng()方法




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值