跟小刀学习 递归简单实现
来源:互联网 发布:vmware 12.5 mac os x 编辑:程序博客网 时间:2024/04/30 13:43
- 五一,第二天。作为屌丝的我。又是一天新的撸码。因为项目中基本不允许递归算法。以至于我现在都了递归怎么写了。今天闲的没事干来回忆下下。
- 其实简单的递归算法比较容易实现
- 我们废话不说,直接上代码
package com.chapter4_29;/** * 三角数的计算 * @author zqp *10+9+8+。。。。+1 */public class Triangle { public static void main(String[] args) {// System.out.println("三角计算的值:"+getTotal(3)); System.out.println("阶乘计算的值:"+getFactorial(3)); } /** * //最后调用函数时直接返回结果1 和前面的N 相加。 * *学好数学很重要。然而我的数学不怎么好。等以后好好从高中开始复习数学。。 *其实这种三角函数的公式 就是 (n² +n)/2 * @param i * @return */ static int getTotal(int i){ if(i == 1){ return 1; }else{ return (i+getTotal(i-1)); } } /** * 获取阶乘的总数 * 6*5*4*。。。。*1 */ static int getFactorial(int n){ if(n == 0){ return 1; }else{ System.out.println("运行:"+n+"*"+(n-1)); return n*getFactorial( n-1); } }}运行:3*2运行:2*1运行:1*0阶乘计算的值:6
我自己画了一个图。也贴上来
这只是递归的简单实现
递归的主要特征:1.就是自己调用自己,2.有一个简单的终止方法。
一般我们在项目中是不允许用递归算法的因为。递归算法不断的往栈里压方法和变量。有时会因为系统的内存不足造成系统崩溃。内存溢出等问题。
其实递归算法有很多很多种。然而发现自己不是特别想撸代码。。啧啧算了。先打一把英雄联盟在说。。无畏的噢。。
0 0
- 跟小刀学习 递归简单实现
- 跟小刀学习 java 数据结构 栈和队列的实现
- 跟小刀学习 数据结构二叉树的实现
- 跟小刀学习 lucene 分词的原理
- 跟小刀 学习数据结构 红黑树的概念
- 跟小刀 学习java导出word
- 跟小刀 学有序链表的实现
- 跟小刀学习 java 数据结构 单向链表
- 跟小刀学 数据结构 双向链表
- 简单实现【递归】
- JS实现简单递归
- 递归SQL简单学习
- 简单背包问题-递归非递归实现
- 递归实现打印12345---简单理解递归
- 实现递归的简单实例
- PHP QuickSort 递归简单实现
- 数据结构-Java实现-简单递归
- 递归的java简单实现
- 千万千万不要运行的 Linux 命令
- 常用测试用例设计方法
- ORG伪指令的意义
- android studio jni入门详解(一)
- codeforces 474D flowers 普通计数dp
- 跟小刀学习 递归简单实现
- 自动化运维工具Ansible详细部署
- C语言制作简谱播放器
- BZOJ 1441: Min 裴蜀定理
- SRM588 Div1Medium KeyDungeonDiv1
- Apache2.4.x版本局域网访问设置
- PHP多维数组排序之array_multisort
- Linux 创建一个简单的私有CA、发证、吊销证书
- malloc 背后的系统知识