Rastgele bir algoritmanın beklenen çalışma süresi, en kötü durum çalışma süresi gibi iyi tanımlanmış bir kavramdır. Bir algoritma rastgele seçilirse, çalışma süresi de rastgele olur, yani çalışma süresinin beklenen değerini tanımlayabiliriz.
Bilinen bir örnek Quicksort'dur: pivotları rastgele seçersek, en kötü çalışma süresi O (n ^ 2) kalsa bile, beklenen çalışma süresinin O (n log n) olduğunu kanıtlayabiliriz. Rasgeleleştirmenin çok güçlü olduğu bir örnek en küçük çevreleyen daire problemidir: en kötü durum çalışma süresi O (n ^ 3), ancak beklenti içinde çalışma süresi sadece O (n) olan basit bir algoritma vardır.
Ortalama çalışma süresi genellikle bir algoritmanın 'çoğu girdi için' davranışı hakkında konuşurken kullanılır. Rastgele bir girdi oluşturmanın bir yolunu tanımlıyoruz, örneğin, bir diziyi rastgele sayılarla dolduruyoruz veya 1'den n'ye kadar sayılara rastgele izin veriyoruz (bu yüzden çoğaltılmıyor) veya bir bozuk para çeviriyoruz ve azalan veya artan bir dizi alıyoruz sayılar. Girdilerin rasgele dağılımı için bir algoritmanın ortalama çalışma süresi, o zaman algoritmanın beklenen çalışma süresidir (bu durumda algoritma rasgele seçilemez, ancak girdi).
Örnek olarak: İlk satırlarda iyi işleyen algoritmaların var olduğu geometrik problemler var, siz girdi satırlarını dağıtmanın çok garip bir yolunu bulana kadar. Çizgilerin rastgele dağıldığını varsayarsanız, bu garip senaryoların oluşma olasılığı çok düşük olabilir, bu nedenle algoritmanız iyi olur.
Kontrast: beklenen çalışma süresi, bir algoritmanın 'kötü şansınız yoksa' nasıl performans gösterdiğiyle ilgilidir - aynı algoritmayı aynı girişte yeniden denemek, ancak farklı rastgele seçimlerle, çok daha hızlı çözülmesine neden olabilir. Ortalama çalışma süresi, bir algoritmanın 'çoğu giriş için' ne kadar iyi performans gösterdiğinden bahseder - aynı algoritmayı aynı girişte tekrar denemek size yardımcı olmaz (belki de algoritmanın rastgele seçilmesi dışında).