資料結構&演算法——遞迴
阿新 • • 發佈:2019-01-22
前言
遞迴在較為高階的數演算法實現中是常用的,比如深度優先搜尋,暴力搜尋。下面展示較為簡單的遞迴程式碼執行的過程中。
簡單示例如下:
示例1:
public void recurisve() { Scanner inputUtil = new Scanner(System.in); String str = inputUtil.next(); if (str.equals("a")) { System.out.println(str); return; } recurisve(); System.out.println(str); } @Test public void test() { recurisve(); }
測試:
依次輸入是:k i h a
依次輸出是:a h i k
執行過程如下圖:
示例2:
public void recurisve_1(int n) {
if (n <= 0) {
return;
}
recurisve_1(n - 1);
recurisve_1(n - 2);
System.out.println(n);
}
測試:
輸入:3
輸出:1213
執行過程如下圖: