递归算法java经典题目
“递归算法java经典题目”相关的资料有哪些?“递归算法java经典题目”相关的范文有哪些?怎么写?下面是小编为您精心整理的“递归算法java经典题目”相关范文大全或资料大全,欢迎大家分享。
JAVA经典算法题目(含答案)
JAVA经典算法40题 整理人:张婵 2011年3月
JAVA经典算法40题
【程序1】 题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第四个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少? 1.程序分析: 兔子的规律为数列1,1,2,3,5,8,13,21.... public class exp2{
public static void main(String args[]){ int i=0;
for(i=1;i<=20;i++)
System.out.println(f(i)); }
public static int f(int x) {
if(x==1 || x==2) return 1; else
return f(x-1)+f(x-2); } } 或
public class exp2{
public static void main(String args[]){ int i=0;
math mymath = new math
递归算法与递归程序说课
《递归算法与递归程序》说课
教材分析
“算法的程序实现”是高中信息技术教育出版社《算法与程序设计》选修模块第三单元 的内容,本节课是“递归算法的程序实现”,前面学生学习了用解析法解决问题、穷举法解决问题、在数组中查找数据、对数进行排序以及本节的前一小节知识点“什么是自定义函数”的学习,,在学习自定义函数的基础上,学习递归算法的程序实现是自定义函数的具体应用,培养学生“自顶向下”、“逐步求精”的意识起着重要的作用。 学情分析
教学对象是高中二年级学生,前面学习了程序设计的各种结构,在学习程序设计各种结构的应用过程中培养了用计算机编程解决现实中的问题,特别的学习循环语句的过程中,应用了大量的“递推”算法。前一节课学习了如何自定义函数,在此基础上深入学习和体会自定义函数的应用。以递推算法的逆向思维进行求解问题,在学习过程中体会递归算法的思想过程。多维度的思考问题和解决问题是提高学生的学习兴趣关键。 教学目标
知识与技能目标:
1、 理解什么是递归算法,学生用递归算法的思想分析问题 2、 能够应用自定义函数方法实现递归算法的编程
过程与方法目标:学生参与讨论,通过思考、动手操作,体验递归算法的方法
情感态度与价值目标:结合数学中的实例,激发学
JAVA经典算法50题
/*******************************************************************************
* @author DarkSee <gxlizq@>
*******************************************************************************/
JAVA经典算法50题
【程序1】 题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第四个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?
1.程序分析:兔子的规律为数列1,1,2,3,5,8,13,21....
public class Demo01 {
public static void main(String args[]) {
for (int i = 1; i <= 20; i++)
System.out.println(f(i));
}
public static int f(int x) {
if (x == 1||x == 2)
return 1;
else
return f(x - 1) + f(x - 2);
递归算法与递归程序说课
《递归算法与递归程序》说课
教材分析
“算法的程序实现”是高中信息技术教育出版社《算法与程序设计》选修模块第三单元 的内容,本节课是“递归算法的程序实现”,前面学生学习了用解析法解决问题、穷举法解决问题、在数组中查找数据、对数进行排序以及本节的前一小节知识点“什么是自定义函数”的学习,,在学习自定义函数的基础上,学习递归算法的程序实现是自定义函数的具体应用,培养学生“自顶向下”、“逐步求精”的意识起着重要的作用。 学情分析
教学对象是高中二年级学生,前面学习了程序设计的各种结构,在学习程序设计各种结构的应用过程中培养了用计算机编程解决现实中的问题,特别的学习循环语句的过程中,应用了大量的“递推”算法。前一节课学习了如何自定义函数,在此基础上深入学习和体会自定义函数的应用。以递推算法的逆向思维进行求解问题,在学习过程中体会递归算法的思想过程。多维度的思考问题和解决问题是提高学生的学习兴趣关键。 教学目标
知识与技能目标:
1、 理解什么是递归算法,学生用递归算法的思想分析问题 2、 能够应用自定义函数方法实现递归算法的编程
过程与方法目标:学生参与讨论,通过思考、动手操作,体验递归算法的方法
情感态度与价值目标:结合数学中的实例,激发学
算法设计与分析-递归与分治
第2章 递归与分治策略
学习要点:
理解递归的概念。 掌握设计有效算法的分治策略。 通过下面的范例学习分治策略设计技巧。
(1)二分搜索技术;(2)大整数乘法; (3)Strassen矩阵乘法; (4)棋盘覆盖;
(5)合并排序和快速排序;(6)线性时间选择; (7)最接近点对问题; (8)循环赛日程表。
学习如何求解递归式这对于分析递归算法 非常有用,主要有5种方法求解递归式。 1.代换法 2.递归树法 3.主方法 4.生成函数法 5.特征方程根
1.代换法求解递归式1.猜答案(可以不需要知道常数系数确切是 多少,仅需要猜它的形式,如n2 ,再试图 解出它的常数。即先推测递归方程的显式 解) 2.数学归纳法验证递归式。验证是否这个递 归式,按照数学归纳法满足条件。即用数 学归纳法证明推测的正确性。 3.找出常数。
例1:T(n)=4T(n/2)+n; T(1)=1; 1.猜T(n)=O ( n3 );想办法证明T(n)≤c * n 3 2.假设T(k ) ≤c k3 ( k=n/2)即对k满足T(n)=O ( n3 ),即有T(n/2 ) ≤c (n/2)3 T(n)=4T(n/2
《算法设计与分析》递归算法典型例题
算法递归典型例题
实验一:递归策略运用练习
三、 实验项目
1.运用递归策略设计算法实现下述题目的求解过程。 题目列表如下:
(1)运动会开了N天,一共发出金牌M枚。第一天发金牌1枚加剩下的七分之一枚,第二天发金牌2枚加剩下的七分之一枚,第3天发金牌3枚加剩下的七分之一枚,以后每天都照此办理。到了第N天刚好还有金牌N枚,到此金牌全部发完。编程求N和M。
(2)国王分财产。某国王临终前给儿子们分财产。他把财产分为若干份,然后给第一个儿子一份,再加上剩余财产的1/10;给第二个儿子两份,再加上剩余财产的1/10;??;给第i个儿子i份,再加上剩余财产的1/10。每个儿子都窃窃自喜。以为得到了父王的偏爱,孰不知国王是“一碗水端平”的。请用程序回答,老国王共有几个儿子?财产共分成了多少份? 源程序:
(3)出售金鱼问题:第一次卖出全部金鱼的一半加二分之一条金鱼;第二次卖出乘余金鱼的三分之一加三分之一条金鱼;第三次卖出剩余金鱼的四分之一加四分之一条金鱼;第四次卖出剩余金鱼的五分之一加五分之一条金鱼;现在还剩下11条金鱼,在出售金鱼时不能把金鱼切开或者有任何破损的。问这鱼缸里原有多少条金鱼?
(4)某路公共汽车,总共有八站,从一号站
Java数组排序总结(冒泡,选择,插入,希尔) 递归算法的复杂度
Java数组排序总结(冒泡,选择,插入,希尔) public class SortAll { /**
* 冒泡排序,选择排序,插入排序,希尔(Shell)排序 Java的实现 * 2008.11.09
* @author YangL. (http://www.idcn.org) */
public static void main(String[] args) {
int[] i = { 1, 5, 6, 12, 4, 9, 3, 23, 39, 403, 596, 87 }; System.out.println(\冒泡排序的结果:\ maoPao(i);
System.out.println();
System.out.println(\选择排序的结果:\ xuanZe(i);
System.out.println();
System.out.println(\插入排序的结果:\ chaRu(i);
System.out.println();
System.out.println(\希尔(Shell
《算法设计与分析》递归算法典型例题
算法递归典型例题
实验一:递归策略运用练习
三、 实验项目
1.运用递归策略设计算法实现下述题目的求解过程。 题目列表如下:
(1)运动会开了N天,一共发出金牌M枚。第一天发金牌1枚加剩下的七分之一枚,第二天发金牌2枚加剩下的七分之一枚,第3天发金牌3枚加剩下的七分之一枚,以后每天都照此办理。到了第N天刚好还有金牌N枚,到此金牌全部发完。编程求N和M。
(2)国王分财产。某国王临终前给儿子们分财产。他把财产分为若干份,然后给第一个儿子一份,再加上剩余财产的1/10;给第二个儿子两份,再加上剩余财产的1/10;??;给第i个儿子i份,再加上剩余财产的1/10。每个儿子都窃窃自喜。以为得到了父王的偏爱,孰不知国王是“一碗水端平”的。请用程序回答,老国王共有几个儿子?财产共分成了多少份? 源程序:
(3)出售金鱼问题:第一次卖出全部金鱼的一半加二分之一条金鱼;第二次卖出乘余金鱼的三分之一加三分之一条金鱼;第三次卖出剩余金鱼的四分之一加四分之一条金鱼;第四次卖出剩余金鱼的五分之一加五分之一条金鱼;现在还剩下11条金鱼,在出售金鱼时不能把金鱼切开或者有任何破损的。问这鱼缸里原有多少条金鱼?
(4)某路公共汽车,总共有八站,从一号站
《算法设计与分析》递归算法典型例题
算法递归典型例题
实验一:递归策略运用练习
三、 实验项目
1.运用递归策略设计算法实现下述题目的求解过程。 题目列表如下:
(1)运动会开了N天,一共发出金牌M枚。第一天发金牌1枚加剩下的七分之一枚,第二天发金牌2枚加剩下的七分之一枚,第3天发金牌3枚加剩下的七分之一枚,以后每天都照此办理。到了第N天刚好还有金牌N枚,到此金牌全部发完。编程求N和M。
(2)国王分财产。某国王临终前给儿子们分财产。他把财产分为若干份,然后给第一个儿子一份,再加上剩余财产的1/10;给第二个儿子两份,再加上剩余财产的1/10;??;给第i个儿子i份,再加上剩余财产的1/10。每个儿子都窃窃自喜。以为得到了父王的偏爱,孰不知国王是“一碗水端平”的。请用程序回答,老国王共有几个儿子?财产共分成了多少份? 源程序:
(3)出售金鱼问题:第一次卖出全部金鱼的一半加二分之一条金鱼;第二次卖出乘余金鱼的三分之一加三分之一条金鱼;第三次卖出剩余金鱼的四分之一加四分之一条金鱼;第四次卖出剩余金鱼的五分之一加五分之一条金鱼;现在还剩下11条金鱼,在出售金鱼时不能把金鱼切开或者有任何破损的。问这鱼缸里原有多少条金鱼?
(4)某路公共汽车,总共有八站,从一号站
《算法设计与分析》递归算法典型例题
算法递归典型例题
实验一:递归策略运用练习
三、 实验项目
1.运用递归策略设计算法实现下述题目的求解过程。 题目列表如下:
(1)运动会开了N天,一共发出金牌M枚。第一天发金牌1枚加剩下的七分之一枚,第二天发金牌2枚加剩下的七分之一枚,第3天发金牌3枚加剩下的七分之一枚,以后每天都照此办理。到了第N天刚好还有金牌N枚,到此金牌全部发完。编程求N和M。
(2)国王分财产。某国王临终前给儿子们分财产。他把财产分为若干份,然后给第一个儿子一份,再加上剩余财产的1/10;给第二个儿子两份,再加上剩余财产的1/10; ;给第i个儿子i份,再加上剩余财产的1/10。每个儿子都窃窃自喜。以为得到了父王的偏爱,孰不知国王是“一碗水端平”的。请用程序回答,老国王共有几个儿子?财产共分成了多少份? 源程序:
(3)出售金鱼问题:第一次卖出全部金鱼的一半加二分之一条金鱼;第二次卖出乘余金鱼的三分之一加三分之一条金鱼;第三次卖出剩余金鱼的四分之一加四分之一条金鱼;第四次卖出剩余金鱼的五分之一加五分之一条金鱼;现在还剩下11条金鱼,在出售金鱼时不能把金鱼切开或者有任何破损的。问这鱼缸里原有多少条金鱼?
(4)某路公共汽车,总共有八站,从一号站发轩时车上已有n位乘客,到了第二站先