Java 遞歸:
Java 遞歸是一種算法,它將問題分解成更小的問題并以相同的方式解決這些問題。該算法使用函數(shù)的自我調(diào)用來解決問題。遞歸通常用于解決以下問題: -計算斐波那契數(shù)列 -反轉(zhuǎn)字符串 -查找特定元素的樹
public int fibonacci(int number) { if (number == 1 || number == 2) { return 1; } return fibonacci(number - 1) + fibonacci(number - 2); }
Java 排序?qū)蛹?
Java 排序?qū)蛹壷傅氖窃谂判蚱陂g比較元素之間的優(yōu)先級。通常,Java 使用以下排序?qū)蛹墸? -先按數(shù)值排序 -如果有相同的數(shù)值,則按字母順序排序(根據(jù) Unicode,數(shù)字小于字母)
例如,在對以下列表進行排序時: [5, apple, 3, Banana, 2, Carrot, 1] 排序結(jié)果將為: [1, 2, 3, 5, apple, Banana, Carrot]
public void sort(String[] fruits) { if (fruits == null || fruits.length == 0) { return; } quickSort(0, fruits.length - 1, fruits); } public void quickSort(int left, int right, String[] fruits) { int i = left; int j = right; String pivot = fruits[left + (right - left) / 2]; while (i<= j) { while (fruits[i].compareToIgnoreCase(pivot)< 0) { i++; } while (fruits[j].compareToIgnoreCase(pivot) >0) { j--; } if (i<= j) { String temp = fruits[i]; fruits[i] = fruits[j]; fruits[j] = temp; i++; j--; } } if (left< j) { quickSort(left, j, fruits); } if (i< right) { quickSort(i, right, fruits); } }
上一篇java遞歸和分組