(4条消息) Java递归与循环_学习微站的博客-CSDN博客_java递归循环

61 阅读1分钟

学习微站 于 2021-12-12 17:47:06 发布 745 收藏 1

本网站刊载的所有内容,包括文字、图片、音频、视频、软件、程序、以及网页版式设计等在网上搜集或者是自己原创的。 访问者可将本网站提供的内容或服务用于时应遵守著作权法及其他相关法律的规定,不得侵犯本网站及相关权利人的合法权利。除此以外,将本网站任何内容或服务用于其他用途时,须征得本网站及相关权利人的书面许可,并支付报酬。 不得以任何形式侵犯作者权益,最终解释权归本人所有。

递归:递归函数调用自身(时间和空间的消耗),实现更简洁,性能不如循环
循环:性能优于递归,

package algorithmBasic;

/**
 * @author kegekeqi
 * @version 1.0
 * @date 2021-12-12 10:59
 */
public class DiGui {
	public int f(int n) {
		if (n <= 0) {
			return 0;
		} else if (n == 1) {
			return 1;
		}
		return f(n - 1) + f(n - 2);
	}

	public static void main(String[] args) {
		DiGui basic = new DiGui();
		int f = basic.f(40);
		System.out.println(f);


	}
}


package algorithmBasic;

/**

  • @author kegekeqi

  • @version 1.0

  • @date 2021-12-12 11:08 */ public class ForMethod { public int f(int n) { if (n <= 0) { return 0; } else if (n == 1) { return 1; } int last = 0, result = 1; for (int i = 2; i <= n; i++) { result += last; //上一个给回去 last = result - last; } return result; }

    public static void main(String[] args) { DiGui basic = new DiGui(); int f = basic.f(40); System.out.println(f);

    } }


> 本文使用 [文章同步助手](https://juejin.cn/post/6940875049587097631) 同步