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

学习微站

于 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);


	}
}

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
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);


	}
}


  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33

本文使用 文章同步助手 同步

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容