07.09.2024

0

Like

11

Views

Veri Yapıları Ve Algoritmalar Merge Sort

Merge Sort

Merge Sort, "böl ve fethet" stratejisini kullanan bir sıralama algoritmasıdır. Algoritma, diziyi ikiye böler, her iki parçayı ayrı ayrı sıralar, ve sonunda iki sıralı parçayı birleştirir.

Aşamalar:

Başlangıç dizisi: [16, 21, 11, 8, 12, 22]

  1. Bölme Aşaması:
    • İlk olarak diziyi ortadan ikiye böleriz.
    • İlk parça: [16, 21, 11]
    • İkinci parça: [8, 12, 22]
  2. Bölme Aşaması (İlk Parça):
    • [16, 21, 11] parçasını ikiye böleriz.
    • İlk parça: [16]
    • İkinci parça: [21, 11]
  3. Bölme Aşaması (İkinci Parça):
    • [21, 11] parçasını ikiye böleriz.
    • İlk parça: [21]
    • İkinci parça: [11]
  4. Birleştirme Aşaması (İkinci Parça - [21, 11]):
    • [21] ve [11] parçasını sıralı şekilde birleştiririz.
    • Sonuç: [11, 21]
  5. Birleştirme Aşaması (İlk Parça - [16, 21, 11]):
    • [16] ve [11, 21] parçasını sıralı şekilde birleştiririz.
    • Sonuç: [11, 16, 21]
  6. Bölme Aşaması (İkinci Parça):
    • [8, 12, 22] parçasını ikiye böleriz.
    • İlk parça: [8]
    • İkinci parça: [12, 22]
  7. Bölme Aşaması (İkinci Parça - [12, 22]):
    • [12, 22] parçasını ikiye böleriz.
    • İlk parça: [12]
    • İkinci parça: [22]
  8. Birleştirme Aşaması (İkinci Parça - [12, 22]):
    • [12] ve [22] parçasını sıralı şekilde birleştiririz.
    • Sonuç: [12, 22]
  9. Birleştirme Aşaması (İkinci Parça - [8, 12, 22]):
    • [8] ve [12, 22] parçasını sıralı şekilde birleştiririz.
    • Sonuç: [8, 12, 22]
  10. Son Birleştirme Aşaması:
    • [11, 16, 21] ve [8, 12, 22] parçasını sıralı şekilde birleştiririz.
    • Sonuç: [8, 11, 12, 16, 21, 22]

Big-O Notasyonu:

  • Worst Case (En Kötü Durum): O(n log n)
  • Best Case (En İyi Durum): O(n log n) (Merge Sort her durumda aynı şekilde çalışır)
  • Average Case (Ortalama Durum): O(n log n)

Merge Sort'un Big-O notasyonu her durumda O(n log n) olduğu için, en iyi, en kötü, ve ortalama durumlardaki performansı aynı kalır.

Comments

You need to log in to be able to comment!

Ahmet Abdullah Can

23 yaşında python odaklı bir yazılımcı.

Location

İstanbul, TR

Education

Bilgisayar Programcılığı - Kocaeli Üniversitesi

© 2021 Patika Dev

facebook
twitter
instagram
youtube
linkedin