Algoritma rekursif adalah jenis algoritma yang memanggil dirinya sendiri dalam proses penyelesaian masalah. Teknik rekursi sering digunakan untuk menyelesaikan masalah yang dapat dibagi menjadi submasalah yang lebih kecil dan serupa dengan masalah aslinya.
Konsep Dasar Rekursi
Rekursi terdiri dari dua bagian utama, yaitu basis rekursi (base case) dan langkah rekursif (recursive step). Basis rekursi adalah kondisi di mana algoritma akan berhenti memanggil dirinya sendiri, sedangkan langkah rekursif adalah proses memecah masalah menjadi bagian yang lebih kecil.
Contoh Penggunaan Rekursi
Salah satu contoh klasik dari algoritma rekursif adalah perhitungan faktorial, deret Fibonacci, dan penelusuran pada struktur data tree. Dengan rekursi, solusi dapat dinyatakan dengan kode yang lebih sederhana dan elegan.
Kelebihan dan Kekurangan
Meskipun rekursi dapat menyederhanakan penulisan algoritma, namun seringkali memerlukan lebih banyak memori karena penggunaan stack untuk menyimpan status pemanggilan fungsi. Oleh karena itu, penggunaan rekursi harus dipertimbangkan dengan hati-hati.