在Java中,可以使用遞歸函數來解決許多問題。以下是一些常見的遞歸函數寫法:
public static int factorial(int n) {
if (n == 0) {
return 1;
}
return n * factorial(n-1);
}
public static int fibonacci(int n) {
if (n <= 1) {
return n;
}
return fibonacci(n-1) + fibonacci(n-2);
}
public static int gcd(int a, int b) {
if (b == 0) {
return a;
}
return gcd(b, a % b);
}
class TreeNode {
int val;
TreeNode left;
TreeNode right;
TreeNode(int x) {
val = x;
}
}
public static void traverse(TreeNode node) {
if (node == null) {
return;
}
traverse(node.left);
traverse(node.right);
System.out.println(node.val);
}
這些只是一些遞歸函數的示例,實際上遞歸函數可以用于解決各種問題,你可以根據具體情況編寫適合的遞歸函數。