Merge sort, verimliliğini ve öngörülebilir performansı için bilinen popüler bir karşılaştırma algoritmasıdır. Karşılaştırma sayısını nasıl hesaplamak için uygulamasını optimize edebilir ve performansını farklı senaryolarda analiz edebilir.

Merge Sort

Merge sort, daha küçük subarraylara, her subarray'a bir dizi ayırıyor ve sonra bir araya getiriyor.Ana operasyon, toplam karşılaştırma sayısını belirleyen birleşme sürecinde elementleri karşılaştırıyor.

Merging sırasında Karşılaştırmaları Hesaplamak

Bir araya gelme adımında, karşılaştırmalar iki tür subarray'dan küçük elementi seçerken gerçekleşir.Her bir elementin karşılaştırıldığı karşılaştırmalar dikkate alınır.If the subarrays have numbers 370FLT:0)n1 ve ).2, maksimum karşılaştırma sayısı .

Toplam Karşılaştırmaları Tahmin Etmek

Bir dizi karşılaştırma için bir araya gelen sıralama, her bir birleşme işlemine her türlü değerleme ile ilgili olarak yaklaşık olarak ulaşılabilir.Bir dizi boyut için [[DÜT:0)n) toplam karşılaştırmalar kabaca:

  • [FONT=0) n[Dönetici:0))) = 1.
  • Her bir recursion seviyesi, tüm düzeylerde toplam karşılaştırmalar ile birlikte, subarrayları içerir.
  • Subarrays olarak seviye çift başına karşılaştırma sayısı daha büyük büyür.

Pratik Hesaplama Yöntemi

Karşılaştırmaları pratik olarak hesaplamak için, birleşme sürecini simüle etmek veya recursive ilişkiyi kullanmak:

[0]C (n) = C ( ⁇ n/2 ⁇ ) + C ( ⁇ n/2 ⁇ ) + (n - 1)).

[FONT:0)C (n), boyutsal bir dizi için toplam karşılaştırmalar:2)). Bu gerilemeler ve para toplama sırasında karşılaştırmalar için uygun formül hesapları.