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 HMO dan PPO

    Perbedaan antara HMO dan PPO

    Perbedaan utama: HMO memiliki rencana kaku yang mencakup memilih dokter perawatan primer yang akan mengurus kebutuhan medis tertanggung. PPO memiliki rencana yang lebih fleksibel yang memungkinkan pasien untuk mengunjungi dokter yang tidak ada di jaringan mereka untuk jumlah diskon. Di negara-negara di mana biaya tagihan medis melalui atap, yang terbaik bagi banyak orang untuk memilih asuransi kesehatan
  • perbandingan populer: Perbedaan antara Samsung Galaxy Win dan Xolo X1000

    Perbedaan antara Samsung Galaxy Win dan Xolo X1000

    Perbedaan utama: Samsung Galaxy Win adalah ponsel lain dari Samsung Corporation. Samsung Galaxy Win hadir dalam dua varian: Single-SIM dan Dual-SIM. Samsung Galaxy Win juga dijual sebagai Samsung Galaxy Grand Quattro di pasar tertentu. Ponsel ini adalah smartphone quad-core yang ditujukan untuk segmen anggaran
  • perbandingan populer: Perbedaan antara Nainital dan Manali

    Perbedaan antara Nainital dan Manali

    Perbedaan utama: Nainital dan Manali, keduanya adalah stasiun bukit yang populer di India. Nainital terletak di Uttarakhand sedangkan Manali hadir di Himachal Pradesh. Nainital secara luas populer untuk danau, sedangkan Manali terkenal dengan pemandangan gunung yang menakjubkan. Udara segar yang sejuk, keindahan yang tenteram, langit bertabur awan, sungai atau danau, semua kata-kata indah ini membawa Anda ke dunia lain tempat Anda ingin menghabiskan liburan
  • perbandingan populer: Perbedaan antara TK dan Sekolah Dasar

    Perbedaan antara TK dan Sekolah Dasar

    Perbedaan utama: Taman kanak-kanak menunjukkan jenis prasekolah yang berfokus pada anak-anak dari tiga hingga lima tahun. Sekolah dasar adalah sekolah dasar yang diperuntukkan bagi anak-anak di bawah usia sebelas tahun. Namun, di beberapa negara taman kanak-kanak dan sekolah dasar digunakan secara sinonim untuk menunjukkan sebuah sekolah untuk anak-anak dengan usia lima hingga enam tahun
  • perbandingan populer: Perbedaan antara Olimpiade Musim Dingin dan Olimpiade Musim Panas

    Perbedaan antara Olimpiade Musim Dingin dan Olimpiade Musim Panas

    Perbedaan utama : Pertandingan Olimpiade Musim Dingin dan Musim Panas diselenggarakan oleh IOC (komite Olimpiade Internasional) setiap selang waktu setiap dua tahun. Perbedaan di antara mereka terletak di tempat di mana mereka diadakan dan permainan yang mereka tunjukkan. Pertandingan Olimpiade pertama kali dimulai di kota Olympia, di Yunani kuno
  • perbandingan populer: Perbedaan antara Keduanya dan Keduanya

    Perbedaan antara Keduanya dan Keduanya

    Perbedaan Utama: ' Either' digunakan untuk menunjukkan yang keluar dari grup. Grup umumnya terdiri dari dua anggota tetapi kadang-kadang grup dapat terdiri dari lebih dari dua anggota. Di sisi lain, 'keduanya' digunakan untuk menunjukkan dua dari dua anggota dan merupakan istilah untuk merujuk mereka secara kolektif
  • perbandingan populer: Perbedaan antara Sampah dan Sampah

    Perbedaan antara Sampah dan Sampah

    Perbedaan utama: Sampah dan sampah keduanya merujuk pada produk limbah. Namun, sampah sebagai kata umumnya terkait dengan produk limbah yang dapat diurai oleh mikroorganisme dan sampah umumnya terkait dengan jenis produk limbah lainnya yang tidak terurai atau membusuk. Sampah dan sampah adalah dua kata yang sering digunakan secara bergantian sehingga tidak ada perbedaan antara kata-kata ini
  • perbandingan populer: Perbedaan antara Pekerjaan dan Profesi

    Perbedaan antara Pekerjaan dan Profesi

    Perbedaan utama: Pekerjaan adalah kegiatan yang dilakukan dalam pertukaran nilai moneter. Profesi, di sisi lain, adalah panggilan yang didasarkan pada pelatihan pendidikan khusus. Pekerjaan dan profesi adalah dua kata yang sering digunakan secara bergantian oleh kebanyakan orang. Namun, banyak yang tidak tahu perbedaan antara kedua kata tersebut
  • perbandingan populer: Perbedaan antara Sepakbola Amerika dan Kanada

    Perbedaan antara Sepakbola Amerika dan Kanada

    Perbedaan Utama: American Football adalah olahraga yang berlangsung selama satu jam dan mencakup 11 pemain di lapangan pada suatu waktu. Sepakbola Kanada berlangsung sekitar satu jam dan masing-masing memiliki 4 kuartal 15 menit. Ini termasuk memiliki 12 pemain di lapangan sekaligus. Permainan berbeda dalam ukuran lapangan, ukuran bola dan aturan dan regulasi tertentu

Pilihan Editor

Perbedaan antara bahasa pemrograman Prosedural, Struktural dan Berorientasi Objek

Perbedaan Utama: Bahasa pemrograman prosedural terdiri dari satu set panggilan prosedur dan satu set kode untuk setiap prosedur. Bahasa pemrograman struktural menekankan pada pemisahan data program dari fungsinya. Di sisi lain, bahasa berorientasi objek didasarkan pada entitas yang dikenal sebagai objek