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 Nomor Routing ABA dan ACH

    Perbedaan antara Nomor Routing ABA dan ACH

    Perbedaan Utama: Nomor Perutean ABA adalah angka sembilan digit yang terletak pada cek, juga dikenal sebagai Nomor Transit Perutean (RTN). Nomor Perutean Rumah Kliring Otomatis (ACH) juga merupakan angka sembilan digit, mirip dengan Nomor Perutean ABA. Dalam banyak kasus, angka ABA dan ACH sama. Ada berbagai cara agar uang dapat ditransfer ke dan dari rekening bank Anda
  • perbandingan populer: Perbedaan Cantik dan Cantik

    Perbedaan Cantik dan Cantik

    Perbedaan utama: Keduanya digunakan untuk efek wajah yang menyenangkan. Pretty lebih mengacu pada tampilan luar dibandingkan dengan cantik, yang mengacu pada kecantikan yang mendalam dari setiap orang. Kata sifat 'cantik' mengacu pada penampilan seseorang dalam tampilan luar. Ini digunakan sebagai pujian untuk memuji wajah seseorang
  • perbandingan populer: Perbedaan antara Kehamilan dan Menopause

    Perbedaan antara Kehamilan dan Menopause

    Perbedaan utama: Kehamilan berlangsung sekitar 40 minggu, dihitung dari hari pertama periode normal sebelumnya. Minggu-minggu dikelompokkan menjadi tiga trimester. Di sisi lain, menopause didefinisikan sebagai akhir dari kesuburan. Ini dianggap telah terjadi setelah 12 bulan berturut-turut telah kebobolan sejak periode menstruasi wanita sebelumnya
  • perbandingan populer: Perbedaan antara Nokia Lumia 925 dan iPhone 5

    Perbedaan antara Nokia Lumia 925 dan iPhone 5

    Perbedaan Utama: Nokia baru-baru ini mengumumkan ponsel andalan terbarunya Nokia Lumia 925. Telepon ini dilengkapi dengan layar sentuh kapasitif AMOLED 4, 5 inci yang memakan banyak ruang di bagian depan, dengan speaker dan sensor di bagian atas. Layar kapasitif 4, 5 inci memiliki PureMotion HD + yang sama, ClearBlack yang ditemukan di Lumia 920
  • perbandingan populer: Perbedaan antara Otomotif dan Lokomotif

    Perbedaan antara Otomotif dan Lokomotif

    Perbedaan Utama: Lokomotif adalah kendaraan yang digerakkan sendiri yang digunakan untuk mendorong atau menarik barang atau mobil penumpang di rel kereta api. Ada berbagai jenis lokomotif seperti lokomotif uap, listrik, dan diesel. Di sisi lain, otomotif digunakan sebagai kata sifat yang menunjukkan sesuatu yang terkait atau berkaitan dengan kendaraan bermotor
  • perbandingan populer: Perbedaan antara Pengacara dan Pengacara

    Perbedaan antara Pengacara dan Pengacara

    Perbedaan utama: Seorang pengacara diizinkan secara hukum untuk mewakili orang lain atau bertindak atas namanya. Seorang pengacara telah dilatih dalam bidang hukum, dan dapat memberikan nasihat hukum, praktik hukum dan melakukan tuntutan hukum. Saat ini, istilah pengacara dan pengacara sama artinya. Secara tradisional seorang pengacara adalah orang yang secara hukum diizinkan untuk mewakili orang lain atau bertindak atas namanya, sedangkan seorang pengacara dapat memberikan nasihat hukum dan telah dilatih dalam bidang hukum
  • perbandingan populer: Perbedaan antara Kebosanan dan Apatis

    Perbedaan antara Kebosanan dan Apatis

    Perbedaan utama: Kebosanan kata benda dan apatis adalah kata-kata yang mencerminkan ketidaktertarikan dalam aktivitas apa pun. Terkadang mereka sinonim satu sama lain; tetapi kebosanan adalah keadaan emosional, ketika seseorang tidak tertarik karena wahyu atau pengobatan yang teratur. Apati adalah kurangnya minat pada hal-hal yang orang lain temukan bergerak atau menyenangkan
  • perbandingan populer: Perbedaan antara Nebula dan Protostar

    Perbedaan antara Nebula dan Protostar

    Perbedaan Utama: Nebula adalah awan di angkasa yang terdiri dari gas atau kotoran / debu (mis. Awan terbentuk setelah bintang meledak). Sebelum urutan terakhir, sebuah bintang memiliki sejumlah besar awan hidrogen, helium, dan debu, yang dikenal sebagai protobintang. Nebula adalah awan di angkasa yang terdiri dari gas atau kotoran / debu
  • perbandingan populer: Perbedaan antara Swift Code dan IFSC Code

    Perbedaan antara Swift Code dan IFSC Code

    Perbedaan Utama: Kode SWIFT adalah kode yang ditugaskan untuk setiap institusi yang bertindak sebagai identitas institusi di pasar luar negeri. IFSC adalah singkatan dari Indian Financial System Code. Kode IFSC terdiri dari sebelas karakter dan digunakan untuk mengidentifikasi cabang bank di India. IFSC dan SWIFT kedua kode biasanya digunakan dalam konteks sistem keuangan

Pilihan Editor

Perbedaan antara Rs dan Re

Perbedaan utama: Rs. dan Re. digunakan untuk mewakili Rupee. Kembali. menunjukkan nilai singular dari rupee, sementara Rs. digunakan untuk menunjukkan beberapa rupee. Istilah 'Rs' dan 'Re' keduanya digunakan untuk menunjukkan mata uang, Rupee. Rupee adalah mata uang yang digunakan di banyak negara timur