REKURSIF
Rekursif merupakan salah satu metode algoritma yang kerap digunakan dalam membuat perulangan, seperti halnya iterasi for, repeat .. until, do.. while, dan lainnya. Perbedaannya terletak dalam sifatnya yang memanggil dirinya sendiri, baik secara langsung ataupun melalui metode yang lainnya. Ciri masalah yang dapat diselesaikan secara rekursif adalah masalah itu dapat direduksi menjadi satu atau lebih masalah-masalah serupa yang lebih kecil.
Secara umum metode algoritma rekursif terdiri atas dua komponen utama, yaitu:
- Bagian induksi, merupakan satu atau lebih kasus yang menyelesaikan masalah serupa namun dengan ukuran data ataupun metode yang lebih sederhana.
- Bagian penyetop, merupakan satu atau lebih kasus yang paling sederhana dan solusinya tidak perlu lagi terjadi rekursi.
Daun Pakis, yang dibentuk oleh ranting-ranting daun yang mempunyai pola yang mirip dengan daun pakis itu sendiri. Setiap ranting daun disusun lagi oleh ranting daun dengan pola yang mirip.
Selain itu, hal yang sama juga tampak pada Pohon Cemara.
Objek rekursif yang khas seperti Daun Pakis dan Pohon Cemara tersebut disebut Fraktal.
- Definisi rekursif diturunkan secara matematik.
- Definisi yang tidak formal menyatakan bahwa sebuah objek dikatakan rekursif jika ia didefinisikan menjadi lebih sederhana dalam terminologi dirinya sendiri.
Perhatikan bahwa sebelum melakukan penambahan program, lakukanlah pemanggilan fungsi rekursif terlebih dahulu sampai fungsi rekursif
mengembalikan nilai pasti ([Math Processing Error]).
Setelah menghilangkan semua pemanggilan fungsi, penambahan baru
dilakukan, mulai dari nilai kembalian dari fungsi yang paling terakhir.
Dengan melihat kemiripan cara kerja serta kode dari fungsi
ANALISIS ALGORITMA REKURSIF
Referensi:
Rizki. (5 September 2012). Mengenal Algoritma Rekursif. http://rizki.info/2012/09/05/mengenal-algoritma-rekursif/. 11 April 2014
Dengan melihat kemiripan cara kerja serta kode dari fungsi
faktorial
dan kali
, kita dapat melihat bagaimana fungsi rekursif memiliki dua ciri khas:- Fungsi rekursif selalu memiliki kondisi yang menyatakan kapan fungsi tersebut berhenti. Kondisi ini harus dapat dibuktikan akan tercapai, karena jika tidak tercapai maka kita tidak dapat membuktikan bahwa fungsi akan berhenti, yang berarti algoritma kita tidak benar.
- Fungsi rekursif selalu memanggil dirinya sendiri sambil mengurangi atau memecahkan data masukan setiap panggilannya. Hal ini penting diingat, karena tujuan utama dari rekursif ialah memecahkan masalah dengan mengurangi masalah tersebut menjadi masalah-masalah kecil.
ANALISIS ALGORITMA REKURSIF
Referensi:
Rizki. (5 September 2012). Mengenal Algoritma Rekursif. http://rizki.info/2012/09/05/mengenal-algoritma-rekursif/. 11 April 2014
Munir, Rinaldi. (2011). Algoritma dan Pemrograman Dalam Bahasa Pascal dan C. Edisi Revisi. Bandung: Informatika.
Bertzzie. Rekursif-Dasar Analisis Algoritma. http://bertzzie.com/knowledge/analisis-algoritma/Rekursif.html#. 11 April 2014