Rastgele ve Özyinelemeli Algoritma Arasındaki Fark

Rastgele ve Özyinelemeli Algoritma Arasındaki Fark
Rastgele ve Özyinelemeli Algoritma Arasındaki Fark

Video: Rastgele ve Özyinelemeli Algoritma Arasındaki Fark

Video: Rastgele ve Özyinelemeli Algoritma Arasındaki Fark
Video: Excel 1 Dakika - İki Listeyi Karşılaştırma 2024, Temmuz
Anonim

Randomize ve Özyinelemeli Algoritma

Rastgele algoritmalar, algoritmanın yürütülmesi sırasında rastgele seçimler yaparak mantığında bir rastgelelik duygusu içerir. Bu rastgelelik nedeniyle, algoritmanın davranışı sabit bir girdi için bile değişebilir. Birçok problem için rastgele algoritmalar en basit ve verimli çözümleri sağlar. Özyinelemeli algoritmalar, bir problemin çözümünün, aynı problemin daha küçük alt problemlerine çözüm bularak bulunabileceği fikrine dayanır. Özyineleme, bilgisayar bilimlerindeki sorunlara çözüm bulmak için yaygın olarak kullanılır ve birçok üst düzey programlama dili özyinelemeyi destekler.

Rastgele Algoritma Nedir?

Rastgele algoritmalar, algoritmanın yürütülmesine rehberlik eden rastgele seçimler yaparak bir rastgelelik duygusu içerir. Bu tipik olarak, bir sözde rasgele sayı üreteci tarafından üretilen bir dizi rasgele sayıyı ek bir girdi olarak alarak yapılır. Bu nedenle, algoritmanın davranışı sabit bir giriş için bile değişebilir. Quicksort, rastgelelik kavramını kullanan ve giriş özelliklerinden bağımsız olarak O(n log n) çalışma süresine sahip, yaygın olarak bilinen bir algoritmadır. Ayrıca, hesaplama geometrisinde dışbükey gövde gibi yapıların inşası için rastgele artımlı inşaat yöntemi kullanılır. Bu yöntemde, giriş noktalarına rastgele izin verilir ve daha sonra yapıya birer birer eklenir. Rastgele bir algoritma uygulamak, aynı problem için deterministik bir algoritma uygulamaktan nispeten basittir. Rastgele bir algoritma tasarlamadaki en büyük zorluk, zaman ve uzay karmaşıklığı için asimptotik analiz yapmaktır.

Öyinelemeli Algoritma Nedir?

Öyinelemeli algoritmalar, bir problemin çözümünün aynı problemin daha küçük alt problemlerine çözümler bularak bulunabileceği fikrine dayanır. Özyinelemeli bir algoritmada, bir fonksiyon kendisinin önceki versiyonuna göre tanımlanır. Bu kendi kendine referans vermenin, kendisine sonsuza kadar atıfta bulunmaktan kaçınmak için bir sonlandırma koşuluna sahip olması gerektiğine dikkat etmek önemlidir. Sonlandırma koşulu, kendisine referans verilmeden önce kontrol edilir. Özyinelemeli bir algoritmanın ilk adımı, sorunun özyinelemeli tanımının temel maddesi ile ilgilidir. İlk adımı takip eden adımlar, problemin tümevarımsal tümceleri ile ilgilidir. Özyinelemeli algoritmalar birçok durumda daha basit bir çözüm sağlar ve aynı problem için yinelemeli algoritmaya göre doğal düşünme biçimine daha yakındır. Ancak genel olarak, özyinelemeli algoritmalar daha fazla bellek gerektirir ve hesaplama açısından pahalıdır.

Rastgele ve Özyinelemeli Algoritma arasındaki fark nedir?

Rastgele algoritmalar, algoritmanın yürütülmesini etkileyebilecek rastgele seçimler yaparak rastgelelik duygusu kullanan algoritmalardır. Aynı problemin daha küçük alt problemlerine çözümler. Rastgele algoritmalardaki rastgelelik nedeniyle, aynı girdi için bile (algoritmanın farklı yürütmelerinde) algoritmanın davranışı değişebilir. Ancak özyinelemeli algoritmalarda bu mümkün değildir ve özyinelemeli bir algoritmanın davranışı sabit bir girdi için aynı olacaktır.

Önerilen: