Java數(shù)據(jù)結(jié)構(gòu)及算法實(shí)例:考拉茲猜想 Collatz Conjecture
更新時(shí)間:2015年06月20日 11:12:47 投稿:junjie
這篇文章主要介紹了Java數(shù)據(jù)結(jié)構(gòu)及算法實(shí)例:考拉茲猜想 Collatz Conjecture,本文直接給出實(shí)現(xiàn)代碼,代碼中包含詳細(xì)注釋,需要的朋友可以參考下
/**
* 考拉茲猜想:Collatz Conjecture
* 又稱為3n+1猜想、冰雹猜想、角谷猜想、哈塞猜想、烏拉姆猜想或敘拉古猜想,
* 是指對(duì)于每一個(gè)正整數(shù),如果它是奇數(shù),則對(duì)它乘3再加1,
* 如果它是偶數(shù),則對(duì)它除以2,如此循環(huán),最終都能夠得到1。
*/
package al;
public class CollatzConjecture {
private int i = 1;
public static void main(String[] args) {
long l = 9999999;
System.out.println("l is "+ l);
CollatzConjecture cc = new CollatzConjecture();
cc.Collatz(l);
}
/**
* 至今尚未有人能證明其正確性。有趣的是,目前也尚未檢查出任何反例。
* 猜想的內(nèi)容是這樣的:有一個(gè)整數(shù),如果是偶數(shù),就除以 2 ;
* 如果是奇數(shù),就乘以 3 再加 1 。
* 一個(gè)整數(shù)不斷這樣操作下去,最後一定會(huì)變成 1 。
* 這個(gè)操作的過(guò)程就是一種迭代。
* @author
* @param param 初始輸入的數(shù)字
*/
private void Collatz(long param) {
System.out.println("After " + i + " time we get result " + param);
if(param > 1) {
i++;
if (param%2 == 0) {
Collatz(param/2);
} else {
Collatz(3*param + 1);
}
}
}
}
您可能感興趣的文章:
- java數(shù)據(jù)結(jié)構(gòu)與算法之中綴表達(dá)式轉(zhuǎn)為后綴表達(dá)式的方法
- Java數(shù)據(jù)結(jié)構(gòu)及算法實(shí)例:快速計(jì)算二進(jìn)制數(shù)中1的個(gè)數(shù)(Fast Bit Counting)
- Java數(shù)據(jù)結(jié)構(gòu)及算法實(shí)例:冒泡排序 Bubble Sort
- Java數(shù)據(jù)結(jié)構(gòu)及算法實(shí)例:樸素字符匹配 Brute Force
- java數(shù)據(jù)結(jié)構(gòu)和算法學(xué)習(xí)之漢諾塔示例
- Java數(shù)據(jù)結(jié)構(gòu)與算法入門實(shí)例詳解
相關(guān)文章
Java簡(jiǎn)單計(jì)算器的實(shí)現(xiàn)
這篇文章主要為大家詳細(xì)介紹了Java簡(jiǎn)單計(jì)算器的實(shí)現(xiàn),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-12-12
Post請(qǐng)求參數(shù)是數(shù)組或者List時(shí)的請(qǐng)求處理方式
這篇文章主要介紹了Post請(qǐng)求參數(shù)是數(shù)組或者List時(shí)的請(qǐng)求處理方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-05-05
SpringBoot3.2.2整合MyBatis-Plus3.5.5依賴不兼容的問(wèn)題解決
這篇文章給大家介紹了Spring Boot 3.2.2整合MyBatis-Plus 3.5.5依賴不兼容問(wèn)題,文中通過(guò)代碼示例和圖文介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作有一定的幫助,需要的朋友可以參考下2024-01-01
SpringBoot集成P6spy實(shí)現(xiàn)自定義SQL日志打印
本文主要介紹了SpringBoot集成P6spy實(shí)現(xiàn)自定義SQL日志打印,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-07-07
IDEA?+?Maven環(huán)境下的SSM框架整合及搭建過(guò)程
這篇文章主要介紹了IDEA?+?Maven環(huán)境下的SSM框架整合及搭建過(guò)程,本文通過(guò)圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-01-01

