Java遞歸算法的使用分析
遞歸算法是一種直接或者間接地調(diào)用自身的算法。在計(jì)算機(jī)編寫(xiě)程序中,遞歸算法對(duì)解決一大類問(wèn)題是十分有效的,它往往使算法的描述簡(jiǎn)潔而且易于理解。
問(wèn)題1:一列數(shù)的規(guī)則如下: 1、1、2、3、5、8、13、21、34 ,求第30位數(shù)是多少?使用遞歸實(shí)現(xiàn)
public class FibonacciSequence {
public static void main(String[] args){
System.out.println(Fribonacci(9));
}
public static int Fribonacci(int n){
if(n<=2)
return 1;
else
return Fribonacci(n-1)+Fribonacci(n-2);
}
}
問(wèn)題2:漢諾塔問(wèn)題
要求:輸入一個(gè)正整數(shù)n,表示有n個(gè)盤片在第一根柱子上。輸出操作序列,格式為“移動(dòng) t從 x 到 y”。每個(gè)操作一行,表示把x柱子上的編號(hào)為t的盤片挪到柱子y上。柱子編號(hào)為A,B,C,你要用最少的操作把所有的盤子從A柱子上轉(zhuǎn)移到C柱子上。
public class Hanio {
public static void main(String[] args){
int i=3;
char a ='A',b='B',c='C';
hanio(i,a,b,c);
}
public static void hanio(int n,char a,char b,char c){
if(n==1)
System.out.println("移動(dòng)"+n+"號(hào)盤子從"+a+"到"+c);
else{
hanio(n-1,a,c,b);//把上面n-1個(gè)盤子從a借助b搬到c
System.out.println("移動(dòng)"+n+"號(hào)盤子從"+a+"到"+c);//緊接著直接把n搬動(dòng)c
hanio(n-1,b,a,c);//再把b上的n-1個(gè)盤子借助a搬到c
}
}
}
相關(guān)文章
java中關(guān)于控件JTextArea的幾個(gè)方法
這篇文章主要介紹了java中關(guān)于控件JTextArea的幾個(gè)方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-08-08
Spring Cloud Feign的文件上傳實(shí)現(xiàn)的示例代碼
這篇文章主要介紹了Spring Cloud Feign的文件上傳實(shí)現(xiàn)的示例代碼,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-03-03
SpringBoot中使用攔截器攔截跳轉(zhuǎn)登錄的兩種實(shí)現(xiàn)方法
攔截器(Interceptor)是Spring框架提供的一種機(jī)制,用于在請(qǐng)求的生命周期中插入自定義邏輯,如身份驗(yàn)證、日志記錄等,本文將詳細(xì)介紹兩種在SpringBoot中使用攔截器來(lái)控制用戶登錄并跳轉(zhuǎn)到指定頁(yè)面的方法,需要的朋友可以參考下2024-11-11
詳解基于IDEA2020.1的JAVA代碼提示插件開(kāi)發(fā)例子
這篇文章主要介紹了詳解基于IDEA2020.1的JAVA代碼提示插件開(kāi)發(fā)例子,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-06-06
MyBatis使用Zookeeper保存數(shù)據(jù)庫(kù)的配置可動(dòng)態(tài)刷新的實(shí)現(xiàn)代碼
這篇文章主要介紹了MyBatis使用Zookeeper保存數(shù)據(jù)庫(kù)的配置,可動(dòng)態(tài)刷新,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-08-08
解決RedisTemplate的key默認(rèn)序列化器的問(wèn)題
這篇文章主要介紹了解決RedisTemplate的key默認(rèn)序列化器的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2021-03-03

