Perbedaan antara Rekursi dan Iterasi

Perbedaan Kunci: Dalam pemrograman, rekursi dapat dijelaskan dengan mempertimbangkan fungsi rekursif. Fungsi rekursif adalah fungsi yang memanggil dirinya lagi untuk mengulang kode. Di sisi lain, iterasi dicapai dengan fungsi berulang yang berulang untuk mengulangi beberapa bagian dari kode.

Dalam pemrograman, rekursi dan iterasi keduanya digunakan untuk mencapai pengulangan. Mereka merujuk pada proses yang diulang berkali-kali. Rekursi didasarkan pada pendekatan di mana sesuatu merujuk pada dirinya sendiri sampai suatu kondisi terpenuhi. Suatu metode dikatakan rekursif jika ia dapat memanggil dirinya secara langsung atau tidak langsung seperti -

nama kosong ()

{

... nama () ...

}

atau

nama kosong ()

{

... permainan () ...

}

void game () {

... nama () ...

}

Untuk rekursi yang berhasil, kita harus ingat bahwa setiap panggilan yang dibuat dalam proses rekursi harus menyederhanakan perhitungan. Rekursi dicapai dengan mendefinisikan kasus dasar.

int factorial (int N)

{

jika (N == 0) mengembalikan 1;

lain kembali (N * faktorial (N-1));

}

Dalam contoh ini, rekursi dapat dengan mudah dilihat dalam pernyataan (N * faktorial (N-1)), di mana ia memanggil fungsi faktorial lagi. Rekursi sangat membantu karena membantu dalam pemendekan kode. Namun, rekursi ini agak lambat dalam kinerja.

Iterasi didasarkan pada loop. Loop ini merujuk pada proses iterasi eksplisit. Untuk memenuhi persyaratan loop, harus memiliki beberapa jenis kriteria yang menghentikan iterasi lebih lanjut. Namun, jika tes kondisi loop tidak pernah menjadi salah, maka dalam kondisi itu, terjadinya loop tak terbatas tidak terhindarkan. Dalam contoh ini, faktorial ditentukan dengan menggunakan proses iterasi -

function factorial (n)

{

var loop, hasil;

hasil = 1;

untuk (loop = 1; loop <= n; loop ++)

{

hasil = hasil * lingkaran;

}

hasil pengembalian;

}

Dalam contoh ini, perulangan dicapai dengan menggunakan bilangan bulat dari 1 ke n, dan pernyataan loop <= n digunakan sebagai kriteria untuk menghentikan perulangan lebih lanjut. Dengan demikian, kita dapat menyimpulkan bahwa hasil yang sama dapat dicapai dengan menggunakan rekursi dan iterasi. Namun, keduanya didasarkan pada pendekatan yang sedikit berbeda. Algoritma rekursif apa pun juga dapat ditulis menggunakan iterasi (loop).

Perbandingan antara Rekursi dan Iterasi:

Rekursi

Perulangan

Definisi

Rekursi mengacu pada fungsi rekursif di mana ia memanggil dirinya lagi untuk mengulang kode.

Iterasi dicapai oleh fungsi berulang yang berulang untuk mengulangi beberapa bagian dari kode.

Poin penting

Kasus dasar perlu ditentukan

Kondisi pemutusan hubungan kerja perlu ditentukan

Performa

Relatif lambat

Relatif cepat

Penggunaan Memori

Secara relatif lebih banyak

Relatif lebih sedikit

Kode

Lebih kecil

Lebih lama

Pengulangan tanpa batas

Rekursi tak terbatas mampu menabrak sistem

Infinite looping mengkonsumsi siklus CPU berulang kali

Struktur

Pilihan

Pengulangan

Variabel lokal

Tidak dibutuhkan

Wajib

Direkomendasikan

Artikel Yang Berhubungan

  • perbandingan populer: Perbedaan antara Gejala dan Sindrom

    Perbedaan antara Gejala dan Sindrom

    Perbedaan utama: Gejala adalah hal-hal yang hanya dapat dirasakan oleh pasien. Ini adalah hal-hal yang dialami pasien tentang penyakit, cedera atau penyakit. Ini harus dijelaskan kepada dokter, agar dia dapat mendiagnosis pasien. Sindrom adalah kelompok berbagai fitur, tanda, gejala, fenomena atau karakteristik yang dapat dikenali secara klinis
  • perbandingan populer: Perbedaan antara Syiah dan Ismaili

    Perbedaan antara Syiah dan Ismaili

    Perbedaan utama: Syiah adalah salah satu dari dua sekte utama Islam, yang lain adalah Sunni. Ismaili adalah divisi dalam sekte Syiah. Pembagian ini karena pemilihan seorang Imam. Islam dibagi menjadi sekte utama: Sunni dan Syiah. Syiah selanjutnya dibagi menjadi sekte yang lebih kecil karena perbedaan teologis dan politis
  • perbandingan populer: Perbedaan antara B.Sc.  dan BS

    Perbedaan antara B.Sc. dan BS

    Perbedaan Utama: B.Sc. singkatan dari Bachelor of Science. Ini mengacu pada gelar yang diberikan pada penyelesaian program sarjana sains tiga hingga lima tahun. BS hanya bahasa gaul untuk Bachelor of Science. Dengan demikian, tidak ada perbedaan di antara keduanya. B.Sc. atau BS mengacu pada gelar akademik sarjana
  • perbandingan populer: Perbedaan antara Noun dan Pronoun

    Perbedaan antara Noun dan Pronoun

    Perbedaan Utama: Kata benda digunakan untuk menyebut orang, tempat, benda, peristiwa, kejadian, dll. Kata ganti adalah kata yang cocok untuk menggantikan kata benda dalam kalimat. Kata benda adalah kata-kata yang digunakan untuk mengidentifikasi orang, tempat, objek, dll. Kata benda adalah salah satu dari delapan bagian pidato dalam bahasa Inggris
  • perbandingan populer: Perbedaan antara Been dan Being

    Perbedaan antara Been dan Being

    Perbedaan utama: Kata-kata 'pernah' dan 'makhluk' adalah bentuk kata kerja. 'Been' digunakan dalam bentuk lampau, sedangkan 'Being' digunakan dalam bentuk lampau. Baik kata 'pernah' maupun 'makhluk' adalah bentuk-bentuk kata kerja bantu utama 'be' , dan digunakan dalam struktur tata bahasa yang berbeda
  • perbandingan populer: Perbedaan antara Konferensi dan Rapat

    Perbedaan antara Konferensi dan Rapat

    Perbedaan Utama: Konferensi adalah acara yang diselenggarakan untuk organisasi laba atau nirlaba untuk membahas masalah ini atau masalah mendesak. Secara umum, pertemuan mengacu pada pertemuan orang-orang yang memiliki tujuan tertentu. Rapat umumnya dimaksudkan untuk beberapa diskusi formal atau informal
  • perbandingan populer: Perbedaan antara Energi Kinetik dan Momentum

    Perbedaan antara Energi Kinetik dan Momentum

    Perbedaan utama: Energi kinetik adalah energi yang dimiliki oleh suatu objek, karena gerakannya. Ini setara dengan pekerjaan yang diperlukan untuk mempercepat objek. Momentum dideskripsikan sebagai kuantitas yang menyatakan resistensi objek terhadap berhenti. Oleh karena itu, ini juga dapat didefinisikan sebagai "Inersia in Motion
  • perbandingan populer: Perbedaan antara Permen, Toffee, dan Cokelat

    Perbedaan antara Permen, Toffee, dan Cokelat

    Perbedaan utama: Permen rebus, juga dikenal sebagai permen gula, dibuat dari gula dan air atau susu. Toffee adalah jenis permen, di mana gula atau tetes tebu dicampur dengan mentega dan kadang-kadang tepung, dan dipanaskan sampai titik karamelisasi. Cokelat, di sisi lain, bervariasi dari permen. Alih-alih dibuat terutama dari gula, cokelat sebenarnya dibuat dari biji pohon kakao Theobroma tropis
  • perbandingan populer: Perbedaan antara Kacang polong dan Kacang

    Perbedaan antara Kacang polong dan Kacang

    Perbedaan utama: Kacang adalah polong atau biji tanaman besar dari beberapa genera keluarga Fabaceae (juga dikenal sebagai Leguminosae). Meskipun menurut bahasa Inggris, 'kacang' juga mengacu pada beberapa biji atau organ lain (polong), yang mirip dengan biji atau polong leguminasae. Kacang polong adalah jenis kacang dan nama ini paling umum digunakan untuk merujuk pada biji bulat kecil atau biji-polong buah polong Pisum sativum

Pilihan Editor

Perbedaan antara Samsung Galaxy Tab 3 8.0 dan Samsung Galaxy Tab 3 7.0

Perbedaan Utama: Samsung telah menambahkan tablet lain ke jajaran yang terus berkembang. Tab 3 8-inci mengikuti Tab 3 7-inci yang diluncurkan sebelumnya pada tahun 2013. Tablet ini dilengkapi dengan layar sentuh kapasitif TFT 8 inci yang menawarkan kepadatan sekitar 189 ppi piksel. Perangkat ini hadir dalam tiga varian berbeda: Wi-Fi, 3G dan 4G