Đệ Quy Trong Java - Học Java Cơ Bản đến Nâng Cao - VietTuts
Có thể bạn quan tâm
Lớp Wrapper trong java Truyền giá trị và tham chiếu trong java
Đệ quy trong java là quá trình trong đó một phương thức gọi lại chính nó một cách liên tiếp. Một phương thức trong java gọi lại chính nó được gọi là phương thức đệ quy.
Sử dụng đệ quy giúp code chặt chẽ hơn nhưng sẽ khó để hiểu hơn.
Cú pháp:
returntype methodname() { // code methodname(); }Nội dung chính
- Ví dụ về đệ quy trong java
Ví dụ về đệ quy trong java
Dưới đây là các ví dụ về cách sử dụng đệ quy trong java.
Ví dụ 1: vòng lặp vô tận
public class RecursionExample1 { static void p() { System.out.println("hello"); p(); } public static void main(String[] args) { p(); } }Kết quả:
hello hello ... Exception in thread "main" java.lang.StackOverflowErrorVí dụ 2: vòng lặp có hạn
public class RecursionExample2 { static int count = 0; static void p() { count++; if (count <= 5) { System.out.println("hello " + count); p(); } } public static void main(String[] args) { p(); } }Kết quả:
hello 1 hello 2 hello 3 hello 4 hello 5Ví dụ 3: tính giai thừa
public class RecursionExample3 { static int factorial(int n) { if (n == 1) return 1; else return (n * factorial(n - 1)); } public static void main(String[] args) { System.out.println("Giai thừa của 5 là: " + factorial(5)); } }Kết quả:
Giai thừa của 5 là: 120Chương trình trên hoạt động như sau:
factorial(5) factorial(4) factorial(3) factorial(2) factorial(1) return 1 return 2*1 = 2 return 3*2 = 6 return 4*6 = 24 return 5*24 = 120Ví dụ 4: dẫy số Fibonacci
public class RecursionExample4 { static int n1 = 0, n2 = 1, n3 = 0; static void printFibo(int count) { if (count > 0) { n3 = n1 + n2; n1 = n2; n2 = n3; System.out.print(" " + n3); printFibo(count - 1); } } public static void main(String[] args) { int count = 15; System.out.print(n1 + " " + n2); // in 0 và 1 printFibo(count - 2);// n-2 vì 2 số 0 và 1 đã được in ra } }Kết quả:
0 1 1 2 3 5 8 13 21 34 55 89 144 233 377 Lớp Wrapper trong java Truyền giá trị và tham chiếu trong javaTừ khóa » đệ Quy Cho Mảng
-
Luyện Tập đệ Quy (phần 2) - Phuong's Blog
-
In Mảng Bằng đệ Quy Trong C - Programming - Dạy Nhau Học
-
Tổng Hợp Các Bài Toán Về đệ Quy Trong C - Học 3 Giây
-
[PDF] Bài 5: Đệ Quy
-
Làm Thế Nào để Nhập Xuất Mảng Sử Dụng đệ Quy Trong C/C++?
-
Đệ Quy Và Giải Thuật đệ Quy - Viblo
-
Đệ Quy Và Ngăn Xếp Triển Khai Như Thế Nào? - Viblo
-
Top 15 đệ Quy Cho Mảng
-
Top 14 đệ Quy Mảng
-
[Lập Trình C/C++] Bài 49: đệ Quy Trên Mảng 1 Chiều - YouTube
-
Đệ Quy Siêu Cơ Bản Cho Người Mới Bắt Đầu - CodeLearn
-
Viết Hàm đệ Quy Trả Về Tổng Các Phần Tử Trong Mảng - CodeLearn
-
Hàm đệ Quy Trong C
-
Bài 30. Đệ Quy Trong C – Hàm đệ Quy
-
Đệ Quy Trong C++ (Recursion) - How Kteam
-
Đệ Quy Trên Mảng - Lập Trình
-
Hàm đệ Quy Trong Lập Trình Và Minh Họa Với C++ - Góc Học IT
-
Đệ Quy đa Tuyến (Exponential Recursion)
-
Đệ Quy Trong C++ - Học Lập Trình C++ Online - VietTuts