Java遞歸基礎(chǔ)與遞歸的宏觀語意實例分析
本文實例講述了Java遞歸基礎(chǔ)與遞歸的宏觀語意。分享給大家供大家參考,具體如下:
1.什么是遞歸
本質(zhì)上,將原來的問題,轉(zhuǎn)化為更小的同一問題
2.例子分析
假設(shè)我們需要對數(shù)組進行求和操作(只是為了更好理解遞歸程序)
要求如下:求解從索引為0到n-1的數(shù)組元素和。
分析:
為了能求解從索引為0到n-1的數(shù)組元素和,可以分解為第0個數(shù)加上索引從1到n-1的數(shù)組元素和,如下:

此時求解索引從1到n-1的數(shù)組元素和的規(guī)模比求解從索引為0到n-1的數(shù)組元素和要少一個數(shù)以此類推,如下:

.......
最基本問題:

3.代碼實現(xiàn)本例操作
新建一個package 包名為 Recursion,然后在該包下新建一個SumArray類,相關(guān)代碼如下
package Recursion;
public class SumArray {
//調(diào)用
public static int sum(int[] arr) {
return sum(arr, 0);//0 索引從0開始
}
//遞歸實現(xiàn)數(shù)組相加
//l表示索引
private static int sum(int[] arr, int l) {
if (l == arr.length)
return 0;
return arr[l] + sum(arr, l + 1);
}
//測試
public static void main(String[] args) {
int[] nums = {1, 2, 3, 4, 5, 6, 7};
int value = sum(nums);
System.out.println(value);
}
}
結(jié)果為:28
對上述代碼的分析:

總結(jié):
1、遞歸函數(shù)就是一個函數(shù),完成一個功能,自己調(diào)用自己。
2、宏觀語意為問題更小的子過程。
更多關(guān)于java算法相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Java數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Java操作DOM節(jié)點技巧總結(jié)》、《Java文件與目錄操作技巧匯總》和《Java緩存操作技巧匯總》
希望本文所述對大家java程序設(shè)計有所幫助。
- Java鏈表的天然遞歸結(jié)構(gòu)性質(zhì)圖文與實例分析
- java遞歸算法的實例詳解
- Java方法遞歸調(diào)用實例解析
- 如何實現(xiàn)java遞歸 處理權(quán)限管理菜單樹或分類
- java鏈表應(yīng)用--基于鏈表實現(xiàn)隊列詳解(尾指針操作)
- Java基于鏈表實現(xiàn)棧的方法詳解
- Java鏈表中元素刪除的實現(xiàn)方法詳解【只刪除一個元素情況】
- Java實現(xiàn)鏈表中元素的獲取、查詢和修改方法詳解
- Java鏈表中添加元素的原理與實現(xiàn)方法詳解
- Java鏈表(Linked List)基本原理與實現(xiàn)方法入門示例
- Java遞歸運行的機制:遞歸的微觀解讀圖文分析
相關(guān)文章
Java RabbitMQ的工作隊列與消息應(yīng)答詳解
這篇文章主要為大家詳細介紹了Python實現(xiàn)學生成績管理系統(tǒng),文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助2022-03-03
Mybatis Plus Wrapper查詢某幾列的方法實現(xiàn)
MybatisPlus中,使用Wrapper的select和notSelect方法可以精確控制查詢的字段,本文就來介紹一下Mybatis Plus Wrapper查詢某幾列的方法實現(xiàn),感興趣的可以了解一下2024-10-10
將一個數(shù)組按照固定大小進行拆分成數(shù)組的方法
下面小編就為大家?guī)硪黄獙⒁粋€數(shù)組按照固定大小進行拆分成數(shù)組的方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2016-11-11
一文掌握spring cloud gateway(總結(jié)篇)
Spring Cloud Gateway是Spring Cloud的全新項目,該項目是基于Spring 5.0,Spring WebFlux和Project Reactor等技術(shù)開發(fā)的網(wǎng)關(guān),它旨在為微服務(wù)架構(gòu)提供一種簡單有效的統(tǒng)一的API路由管理方式,本文通過實例代碼總結(jié)介紹spring cloud gateway的相關(guān)知識,感興趣的朋友一起看看吧2024-12-12

