Skip to content
INOVATIF, PROFESIONAL, DAN BERKEPRIBADIAN
facebook
youtube
instagram
Pusat Pengelolaan Digitalisasi Penjaminan Mutu Universitas Medan Area
Call Support 0823-6994-9970
Email Support [email protected]
Location Jl. Kolam No. 1 Medan Estate
  • BERANDA
  • TENTANG
    • PROFIL
    • VISI DAN MISI
    • STRUKTUR ORGANISASI
  • BERITA KEGIATAN
  • KERJASAMA
  • LAYANAN & INFORMASI
    • APLIKASI
      • PERPUSTAKAAN UMA
      • ACADEMIC ONLINE CAMPUS (AOC)
      • REPOSITORI UMA
      • TRACER STUDY (ALUMNI)
      • JURNAL
      • E-LEARNING UMA
      • DIREKTORI MAHASISWA
    • ARSIP
      • PERUBAHAN DATA MAHASISWA DI PDDIKTI
      • Buku Pedoman Universitas Medan Area
      • KURIKULUM
        • Kurikulum Teknik
        • Kurikulum Pertanian
        • Kurikulum Ekonomi dan Bisnis
        • Kurikulum Hukum
        • Kurikulum Isipol
        • Kurikulum Psikologi
        • Kurikulum Saintek
        • Kurikulum Agama Islam
      • Kalender Akademik Universitas Medan Area
      • Artikel
    • Helpdesk P2DIK
  • id
    • en
    • id

Pengertian, Tujuan, Jenis dan Contoh Algoritma Rekursif

Home > Artikel > Pengertian, Tujuan, Jenis dan Contoh Algoritma Rekursif

Pengertian, Tujuan, Jenis dan Contoh Algoritma Rekursif

Posted on 15 Januari 202615 Januari 2026 by Anisa Rahma Nasution
0

1. Pengertian Algoritma Rekursif

Algoritma rekursif adalah algoritma yang menyelesaikan suatu masalah dengan cara memanggil dirinya sendiri secara berulang sampai mencapai kondisi tertentu yang disebut basis (base case).

Ciri utama algoritma rekursif:

  • Memiliki fungsi/prosedur yang memanggil dirinya sendiri

  • Memiliki base case untuk menghentikan proses rekursi

  • Setiap pemanggilan mengarah ke masalah yang lebih kecil

Contoh sederhana:
Perhitungan faktorial
n! = n × (n−1)!

2. Tujuan Algoritma Rekursif

Tujuan penggunaan algoritma rekursif antara lain:

  1. Menyederhanakan masalah kompleks
    Masalah besar dipecah menjadi sub-masalah yang lebih kecil dan sejenis.

  2. Mempermudah penulisan kode
    Untuk kasus tertentu (seperti struktur pohon atau graf), rekursif membuat kode lebih singkat dan jelas.

  3. Mencerminkan konsep matematis
    Banyak rumus matematika secara alami bersifat rekursif.

  4. Memudahkan pemrosesan struktur data tertentu
    Seperti:

    • Tree

    • Graph

    • Linked List

    • Divide and Conquer

3. Jenis-Jenis Algoritma Rekursif

1. Rekursi Langsung (Direct Recursion)

Fungsi memanggil dirinya sendiri secara langsung.

Contoh:

def faktorial(n):
if n == 0:
return 1
return n * faktorial(n-1)

2. Rekursi Tidak Langsung (Indirect Recursion)

Fungsi tidak memanggil dirinya sendiri secara langsung, tetapi melalui fungsi lain.

Contoh:

def fungsiA(n):
if n > 0:
fungsiB(n-1)

def fungsiB(n):
if n > 0:
fungsiA(n-1)

3. Rekursi Ekor (Tail Recursion)

Pemanggilan rekursif terjadi di akhir fungsi, sehingga tidak ada operasi lain setelahnya.

Contoh:

def faktorial(n, hasil=1):
if n == 0:
return hasil
return faktorial(n-1, hasil*n)

4. Rekursi Ganda (Multiple Recursion)

Fungsi memanggil dirinya lebih dari satu kali dalam satu pemanggilan.

Contoh:

def fibonacci(n):
if n <= 1:
return n
return fibonacci(n-1) + fibonacci(n-2)

1. Contoh Algoritma Rekursif Faktorial

Digunakan untuk menghitung nilai faktorial suatu bilangan.

Rumus:
n! = n × (n−1)!

Contoh (Python):

def faktorial(n):
if n == 0 or n == 1: # base case
return 1
else:
return n * faktorial(n-1)

Penjelasan:
Fungsi akan memanggil dirinya sendiri hingga mencapai kondisi dasar.

2. Contoh Algoritma Rekursif Fibonacci

Digunakan untuk menghasilkan deret Fibonacci.

Contoh (Python):

def fibonacci(n):
if n <= 1: # base case
return n
else:
return fibonacci(n-1) + fibonacci(n-2)

def fibonacci(n):
if n <= 1: # base case
return n
else:
return fibonacci(n-1) + fibonacci(n-2)

Penjelasan:
Fungsi memanggil dirinya dua kali dalam satu pemanggilan (rekursi ganda).

3. Contoh Algoritma Rekursif Menjumlahkan Elemen Array

Digunakan untuk menjumlahkan semua elemen dalam sebuah array.

Contoh (Python):

def jumlah_array(arr, n):
if n == 0: # base case
return 0
return arr[n-1] + jumlah_array(arr, n-1)

4. Contoh Algoritma Rekursif Pencarian Nilai Maksimum

Digunakan untuk mencari nilai terbesar dalam array.

Contoh (Python):

def maksimum(arr, n):
if n == 1:
return arr[0]
return max(arr[n-1], maksimum(arr, n-1))

5. Contoh Algoritma Rekursif Pengecekan Palindrom

Digunakan untuk mengecek apakah sebuah kata merupakan palindrom.

Contoh (Python):

def palindrom(teks):
if len(teks) <= 1:
return True
if teks[0] != teks[-1]:
return False
return palindrom(teks[1:-1])

Algoritma rekursif merupakan salah satu teknik pemrograman yang penting dalam menyelesaikan masalah yang bersifat berulang dan terstruktur. Dengan memanfaatkan pemanggilan fungsi terhadap dirinya sendiri, algoritma rekursif mampu menyederhanakan permasalahan kompleks menjadi bagian-bagian yang lebih kecil dan mudah dipahami.

Meskipun memiliki kelebihan dalam hal kejelasan logika dan kesederhanaan kode, penggunaan algoritma rekursif tetap perlu memperhatikan kondisi dasar (base case) agar tidak terjadi pemanggilan tak terbatas. Oleh karena itu, pemahaman yang baik mengenai konsep, tujuan, dan jenis-jenis algoritma rekursif sangat diperlukan agar dapat digunakan secara efektif dan efisien dalam pemrograman.

Dengan memahami algoritma rekursif, diharapkan pembaca mampu menerapkannya secara tepat dalam berbagai permasalahan komputasi serta memilih solusi terbaik sesuai kebutuhan.

Post Views: 865

p2dpm_uma

Jalan Kolam Nomor 1 Medan Estate

#PRESTASIDOSENUMA Selamat & Sukses Kepada 23 Dosen #PRESTASIDOSENUMA
Selamat & Sukses Kepada 23 Dosen Universitas Medan Area atas Penandatanganan Kontrak Program Penelitian & Pengabdian Kepada Masyarakat DPPM KEMDIKTISAINTEK Tahun Anggaran 2026
.
Informasi dan Pendaftaran Mahasiswa Baru :
➖➖➖➖➖➖➖
https://pmb.uma.ac.id
➖➖➖➖➖➖➖

Call Center UMA :
☎️0811 6013 888

#ptssehat #ptsterbaik #UMAkampusJuara #KampusUnggul
Get @reshare_app • @umabestari #REKORMURI Rektor U Get @reshare_app • @umabestari #REKORMURI
Rektor Universitas Medan Area Menjadi Salah Satu Pemateri Dalam Pemecahan Rekor MURI dalam Seminar 10 Pohon Ilmu dan Peserta Terbanyak yang di selenggarakan oleh Kantor LLDIKTI Wilayah I Sumut
.
Informasi dan Pendaftaran Mahasiswa Baru :
➖➖➖➖➖➖➖
https://pmb.uma.ac.id
➖➖➖➖➖➖➖

Call Center UMA :
☎️0811 6013 888

#ptssehat #PTSterbaik
#UMAkampusJuara #KampusUnggul
Get @reshare_app • @umabestari #KUNJUNGAN Kunjunga Get @reshare_app • @umabestari #KUNJUNGAN
Kunjungan Dr. dr. Delyuzar, M.Ked.(PA), Sp.PA(K), Ketua Umum Pengurus Wilayah (PW) Asosiasi Masjid Kampus
Indonesia (AMKI) Sumatera Utara ke Universitas Medan Area Dalam rangka melihat Pelaksanaan Pemotongan Hewan Qurban.
.
Informasi dan Pendaftaran Mahasiswa Baru :
➖➖➖➖➖➖➖
https://pmb.uma.ac.id
➖➖➖➖➖➖➖

Call Center UMA :
☎️0811 6013 888

#ptssehat #PTSterbaik
#UMAkampusJuara #KampusUnggul
Selamat Hari Raya Idul Adha 1447 H Selamat Hari Raya Idul Adha 1447 H
Yuk, buruan daftar sekarang! Yuk, buruan daftar sekarang!
Get @reshare_app • @umabestari #SOSIALISASI Dinas Get @reshare_app • @umabestari #SOSIALISASI
Dinas Pariwisata Medan dan Universitas Medan Area  berkolaborasi melaksanakan Sosialisasi Kompetisi Desain Logo HUT Kota Medan ke-436 Tahun 2026.
#PMBUMA2026 Yuk.. Join di Kampus Unggul Universi #PMBUMA2026 

Yuk.. Join di Kampus Unggul Universitas Medan Area. Dapatkan Beragam Fasilitas Pendidikan dan Beasiswa Hingga 100%. . 

Informasi dan Pendaftaran Mahasiswa Baru : 

➖➖➖➖➖➖➖
 https://pmb.uma.ac.id 
➖➖➖➖➖➖➖ 

Call Center UMA : 
☎️0811 6013 888 

#ptssehat #ptsterbaik #UMAkampusJuara
Get @reshare_app • @umabestari #JADWALUTSUMA Selam Get @reshare_app • @umabestari #JADWALUTSUMA
Selamat Melaksanakan Ujian Tengah Semester (UTS) Semester Genap Tahun Akademik 2025/2026 yang dilaksanakan tanggal 11 Mei s.d. 25 Mei 2026
.
Informasi dan Pendaftaran Mahasiswa Baru :
➖➖➖➖➖➖➖
https://pmb.uma.ac.id
➖➖➖➖➖➖➖

Call Center UMA :
☎️0811 6013 888

#ptssehat #ptsterbaik #UMAkampusJuara #KampusUnggul
Follow on Instagram

Lokasi P2DPM

url url url url url url url url url url url url

Kategori

  • Berita Terbaru
  • Pengumuman
  • Berita Kegiatan
  • Artikel

POSTINGAN TERPOPULER

  • Memahami Perbedaan Waktu: AM/PM, Zona Waktu, dan Sistem Jam
  • Cara Melihat IP Address di Semua Jenis Perangkat dan Jenis-Jenisnya
  • Dasar-Dasar Desain Grafis: Prinsip yang Harus Diketahui Pemula
  • Manfaat Pengelolaan Sumber Daya Alam Berkelanjutan Untuk Kehidupan
  • Pengertian Gelombang Longitudinal dan Contohnya dalam Kehidupan Sehari-Hari
KAMPUS 1
Jalan Kolam Nomor 1 Medan Estate / Jalan Gedung PBSI, Medan 20223
(061) 7360168, Call Canter : 0811-6013-888
[email protected]
KAMPUS 2
Jalan Sei Serayu Nomor 70 A / Jalan Setia Budi Nomor 79 B, Medan 20122
(061) 42402994, HP : 0811 607 259
[email protected]
© 2026 P2A2I - Universitas Medan Area