DS (Data Struktur)
Rekursif
Rekursi adalah proses pengulangan sesuatu dengan cara kesamaan-diri (wikipedia). Rekursif merupakan perulangan berbeda dengan perulangan pada iterasi seperti while dan for. Meskipun demikian fungsinya tetaplah sama yaitu untuk melakukan perulangan.
Contoh program rekursif untuk faktorial. Misalnya faktorial 5 atau 5! = 5 * 4 * 3 * 2 * 1 = 120, di sini saya menggunakan bahasa pemograman python:
def factorial(n):
if n == 0:
return 1
return (n * factorial(n - 1))
print(factorial(5))
Hasilnya yaitu:
120
Perbedaan antara rekursif dan iterasi setidaknya ada 3 perbedaan:
╔════════════════════╦════════════════════╦═══════════════╗
║ Keterangan ║ Rekursif ║ Iterasi ║
╠════════════════════╬════════════════════╬═══════════════╣
║ Space efficient ? ║ NO ║ YES ║
║ Time efficient ? ║ NO ║ YES ║
║ Ease of Code ? ║ YES ║ NO ║
╚════════════════════╩════════════════════╩═══════════════╝
Analisis Runtime Algoritma
Update soon