/*java.lang 核心包  如 String Math Integer System Thread等  拿来直接用
* java.awt 窗口工具 GUI
* java.net 网络包
* java.io 输入 输出
* java.util 工具类 日期 日历 定义 系统特性
*
*
*/
public class TestRecursion { /**
* @author Administrator
* @version 1.0
* 递归
* 1 方法调用本身(递归体 )
* 2什么时候不再调用(结束条件 也叫递归头)
*
*/
static int a=0; public static void test01(){
a++;
System.out.println(a+"TestRecursion.test01()");
if(a<=10){
test01();
}else{
System.out.println("over!");
} }
/**
* 阶乘 使用递归方法 实现
* @param n 阶乘的最大数
* @return 阶乘结果返回值
*/ public static long factorial(int i){
if(i==1){
return 1;
}else{
return i*factorial(i-1);
}
}
public static void test03(){
System.out.println("TestRecursion.test03()");
} public static void main(String[] args) {
test01();
//5!=? 120
long n =factorial(5);
System.out.println(n);
} }

Recursion递归的更多相关文章

  1. Teach Yourself Scheme in Fixnum Days 6 recursion递归

    A procedure body can contain calls to other procedures, not least itself: (define factorial (lambda ...

  2. recursion 递归以及递归的缺点

    递归定义的算法有两部分: 递归基:直接定义最简单情况下的函数值: 递归步:通过较为简单情况下的函数值定义一般情况下的函数值. 应用条件与准则: (1)问题具有某种可借用的类同自身的子问题描述的性质: ...

  3. string formating字符串格式化,function函数,group组,recursion递归,练习

    # -*- coding: UTF-8 -*- msg = 'i am {} my hobby is {}'.format('lhf',18) print(msg) msg1 = 'i am %s m ...

  4. 递归转手工栈处理的一般式[C语言]

    是任意形式的递归,是化解的一般式. 主题所谓的“递归调用化解为栈处理”,意思是,将递归函数调用化解为“一个由stack_push stack_pop stack_top等函数调用组成的循环式子”.这里 ...

  5. Python算法:推导、递归和规约

    Python算法:推导.递归和规约 注:本节中我给定下面三个重要词汇的中文翻译分别是:Induction(推导).Recursion(递归)和Reduction(规约) 本节主要介绍算法设计的三个核心 ...

  6. python递归,装饰器,函数, 高阶函数

    在函数内部,可以调用其它函数,如果一个函数在内部调用自身本身,这个函数就是递归函数 递归特性:1.必须有一个明确的结束条件 2.每次进入更深一层递归时,问题规模比上次递归都有所减少(10-8-5等) ...

  7. python 递归进阶操作方法

    递归 在函数内部,可以调用其他函数; 如果一个函数在内部调用自身本身,这个函数就是递归函数. 例如,我们来计算阶乘: n! = 1 x 2 x 3 x ... x n, 用函数f1(n)表示,可以看出 ...

  8. 《Two Dozen Short Lessons in Haskell》(二十二)递归

    <Two Dozen Short Lessons in Haskell>(Copyright © 1995, 1996, 1997 by Rex Page,有人翻译为Haskell二十四学 ...

  9. day 17 初始递归

    递归函数 了解什么是递归 : 在函数中调用自身函数 最大递归深度默认是997/998 —— 是python从内存角度出发做的限制 能看懂递归 能知道递归的应用场景 初识递归 —— 算法 —— 二分查找 ...

随机推荐

  1. Word中回车和网页换行替换

    回车^p 换行^l 用编辑中的查找替换即可 查找^l,替换为^p (一)有建议说按Delete键一个一个将其删除,这是麻烦的,其实可用WORD的查找替换工具一次性替换成回车符.查找--点特殊字符--手 ...

  2. Hadoop通过路径和和链接访问HDFS

    如果既想在Hadoop服务器本地可以通过绝对路径如"/user/hadoop"方式访问hdfs,也想通过"hdfs://local host:9000/user/hado ...

  3. 原来zabbix监控进程与端口是如此的简单!

    使用zabbix自带key监控进程与端口 每个公司都有自己的程序,自己的进程名与端口监听,对于nagios来说,这些都经常需要自己去写插件,但是zabbix不需要,它自己就有监控进程与端口的key. ...

  4. bzoj 4842: [Neerc2016]Delight for a Cat

    Description ls是一个特别堕落的小朋友,对于n个连续的小时,他将要么睡觉要么打隔膜,一个小时内他不能既睡觉也打隔膜 ,因此一个小时内他只能选择睡觉或者打隔膜,当然他也必须选择睡觉或打隔膜, ...

  5. linux如何查看系统是多少位的?64 OR 32

    1.可以用命令“getconf LONG_BIT”查看, 如果返回的结果是32则说明是32位,返回的结果是64则说明是64位. 2.此外还可以使用命令“uname -a”查看, 输出的结果中,如果有x ...

  6. grep正则表达的零宽断言

    先看一组神奇的命令 [root@elastix82 tmp]# echo $html111<td>aaa</td>222[root@elastix82 tmp]# [root@ ...

  7. 捷通华声TTS在Aster+中的安装过程

    1)挂载TTS光碟 2)安装如下5个rpm软件包 [asterisk@TTS78:/mnt]$ls *.rpmjTTS-5.0.1.0-3.i386.rpm             VocLib_Xi ...

  8. 解决Mac nginx问题 [emerg] 54933#0: bind() to 0.0.0.0:80 failed (13: Permission denied)

    brew services restart nginx Stopping nginx... (might take a while) ==> Successfully stopped nginx ...

  9. node和yarn

    nvm 版本管理工具 https://github.com/coreybutler/nvm-windows/releases   nvm-setup   nvm install +版本号   加版本 ...

  10. centos7.3安装zend guard loader3.3 for php5.6

    1 下载zend guard loader 到这里选择自己的系统版本  我选择的64位 for php5.6.3  linux http://www.zend.com/en/products/load ...