Perbedaan Antara Algoritma Acak Dan Rekursif

Perbedaan Antara Algoritma Acak Dan Rekursif
Perbedaan Antara Algoritma Acak Dan Rekursif

Video: Perbedaan Antara Algoritma Acak Dan Rekursif

Video: Perbedaan Antara Algoritma Acak Dan Rekursif
Video: Membandingkan Fungsi Faktorial Iteratif dan Rekursif 2024, Mungkin
Anonim

Algoritma Acak vs Rekursif

Algoritme acak menggabungkan rasa keacakan dalam logikanya dengan membuat pilihan acak selama eksekusi algoritme. Karena keacakan ini, perilaku algoritme dapat berubah bahkan untuk input tetap. Untuk banyak masalah, algoritme acak memberikan solusi yang paling sederhana dan efisien. Algoritma rekursif didasarkan pada gagasan bahwa solusi untuk suatu masalah dapat ditemukan dengan mencari solusi untuk sub masalah yang lebih kecil dari masalah yang sama. Rekursi banyak digunakan untuk menemukan solusi atas masalah dalam ilmu komputer dan banyak bahasa pemrograman tingkat tinggi mendukung rekursi.

Apa itu Algoritma Acak?

Algoritme acak menggabungkan rasa keacakan dengan membuat pilihan acak yang memandu pelaksanaan algoritme. Ini biasanya dilakukan dengan mengambil satu set bilangan acak yang dihasilkan oleh generator nomor pseudorandom sebagai input tambahan. Karena ini, perilaku algoritme dapat berubah bahkan untuk input tetap. Quicksort adalah algoritma yang dikenal luas yang menggunakan konsep keacakan dan memiliki waktu berjalan O (n log n) terlepas dari properti inputnya. Selanjutnya, metode konstruksi inkremental acak digunakan untuk struktur bangunan seperti convex hull dalam geometri komputasi. Dalam metode ini, titik masukan diubah secara acak dan kemudian disisipkan satu per satu ke dalam struktur. Menerapkan algoritme acak relatif sederhana daripada menerapkan algoritme deterministik untuk masalah yang sama. Tantangan terbesar dalam merancang algoritme acak terletak pada melakukan analisis asimtotik untuk kompleksitas ruang dan waktu.

Apa itu Algoritma Rekursif?

Algoritma rekursif didasarkan pada gagasan bahwa solusi untuk suatu masalah dapat ditemukan dengan mencari solusi untuk sub masalah yang lebih kecil dari masalah yang sama. Dalam algoritme rekursif, suatu fungsi didefinisikan dalam istilah versi sebelumnya dari dirinya sendiri. Penting untuk dicatat bahwa referensi mandiri ini harus memiliki kondisi terminasi untuk menghindari referensi itu sendiri selamanya. Kondisi terminasi diperiksa sebelum mereferensikan sendiri. Langkah awal dari algoritma rekursif terkait dengan klausa basis dari definisi rekursif dari masalah tersebut. Langkah-langkah yang mengikuti langkah awal terkait dengan klausa induktif masalah. Algoritme rekursif memberikan solusi yang lebih sederhana dalam banyak situasi dan lebih dekat dengan cara berpikir alami daripada algoritme berulang untuk masalah yang sama. Tapi secara umum,algoritma rekursif membutuhkan lebih banyak memori dan mahal secara komputasi.

Apa perbedaan antara Algoritma Acak dan Rekursif?

Algoritme acak adalah algoritme yang menggunakan rasa keacakan dengan membuat pilihan acak yang dapat memengaruhi eksekusi algoritme, sedangkan algoritme rekursif adalah algoritme yang didasarkan pada gagasan bahwa solusi suatu masalah dapat ditemukan dengan mencari solusi untuk sub masalah yang lebih kecil. dari masalah yang sama. Karena keacakan dalam algoritme acak, perilaku algoritme dapat berubah bahkan untuk input yang sama (dalam eksekusi algoritme yang berbeda). Tetapi ini tidak mungkin dalam algoritma rekursif dan perilaku algoritma rekursif akan sama untuk input tetap.

Direkomendasikan: