Rumah > Java > javaTutorial > teks badan

Rekursi

WBOY
Lepaskan: 2024-08-31 13:02:32
asal
647 orang telah melayarinya

Rekursi

Definisi Rekursi:

  • Rekursi ialah kaedah yang memanggil dirinya sendiri.
  • Kaedah adalah rekursif apabila ia mengandungi panggilan kepada dirinya sendiri.

Contoh Klasik:
Pengiraan faktor ialah contoh klasik rekursi.
Faktorial bagi suatu nombor? ialah hasil darab semua integer dari 1 hingga N

Contoh Kod:

  • Kod yang disediakan menunjukkan kaedah rekursif (factR) dan kaedah lelaran (factI) untuk mengira faktorial.
  • Kedua-dua kaedah mengembalikan hasil yang sama, tetapi dengan pendekatan yang berbeza.

Kerja Kaedah Rekursif:

  • Kaedah rekursif (factR) memanggil dirinya sehingga nilai
  • ? n jadi 1.
  • Dengan setiap panggilan rekursif, kaedah "bertindan" dan hanya mula kembali apabila keadaan asas dipenuhi.

Timbunan Panggilan:

  • Setiap panggilan rekursif memperuntukkan ruang pada timbunan pelaksanaan untuk parameter dan pembolehubah baharu.
  • Panggilan rekursif boleh menyebabkan overrun tindanan, mengakibatkan pengecualian.

Perbandingan dengan Lelaran:

  • Kaedah rekursif mungkin lebih jelas dan mudah untuk algoritma tertentu, seperti isihan pantas.
  • Walau bagaimanapun, versi rekursif mungkin lebih perlahan disebabkan overhed panggilan kaedah.

Penjagaan semasa Menggunakan Rekursi:

  • Adalah penting untuk mempunyai syarat penamatan untuk menghalang kaedah daripada memasuki gelung tak terhingga.
  • Pernyataan nyahpepijat seperti println() boleh membantu anda memahami aliran pelaksanaan rekursif.

Kod Rekursif untuk Mengira Faktorial
LIHAT RECURSION.JAVA

Atas ialah kandungan terperinci Rekursi. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:dev.to
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!