iklan

Memahami Merge Sort Step By Step


Pengurutan yaitu hal yang tentu sangat penting. Merge sort yaitu salah satu algoritma yang mempunyai worst case O(n log n). Tentu sangat jago dong. Quicksort saja mempunyai worst case n pangkat 2 atau n kuadrat. Nah, sesungguhnya bagaimana cara kerja merge sort ini ? Yuk kita pelajari bersama.

Merge Sort Step By Step

Contoh : Kita mempunyai array menyerupai ini
90 12 34 10 55 44 88 23 77

Langkah pertama yaitu membagi menjadi 9 penggalan di setiap masing-masing elemen.
90     12       34     10         55     44         88     23       77
1        2         3       4           5       6           7       8         9
Caranya membandingkan elemen pertama pada penggalan 1 dan penggalan 2 dan seterusnya (bagian n dan n + 1). Cari yang lebih kecil, kemudian masukan ke penggalan yang gres yang berukuran penggalan kini x 2 yaitu 1 x 2 = 2. 
Makara dibandingkan 90 dengan 12, mana yang lebih kecil ? Kan 12.  Maka 12 dimasukan ke penggalan yang baru.
  
90                34     10         55     44         88     23       77
1        2         3       4           5       6           7       8         9

12
 1

Karena pada penggalan 1 dan 2 hanya tersisa 1 penggalan yaitu penggalan 1 dengan hanya 1 elemen. Maka pribadi masukan ke penggalan yang baru.

                    34     10         55     44         88     23       77
1        2         3       4           5       6           7       8         9

12   90
     1    

Lalu kita bandingkan lagi sampai semua habis. Makara kita bandingkan 34 dengan 10, mana yang lebih kecil ? 10 kan. Maka masukan 10 ke penggalan yang baru.

                    34                  55     44         88     23       77
1        2         3       4           5       6           7       8         9

12   90       10
     1            2

Lalu sebab tinggal 1 elemen yaitu 34, maka masukan 34 ke penggalan gres 2.

                                          55     44         88     23       77
1        2         3       4           5       6           7       8         9

12   90       10  34
     1               2 

Lalu cek 55 dengan 44, yang lebih kecil yaitu 44. Setelah 44, hanya tinggal 55, maka sesudah memasukan 44 pribadi memasukan 55.

                                                                88     23       77
1        2         3       4           5       6           7       8         9

12   90       10  34     44  55
     1               2              3

Lalu cek 88 dengan 23, yang lebih kecil yaitu 23. Setelah 23, hanya tinggal 88, maka sesudah memasukan 23 pribadi memasukan 88

                                                                                    77
1        2         3       4           5       6           7       8         9

12   90       10  34     44  55      23  88
     1               2              3             4

Setelah itu sebab tinggal 1 penggalan yaitu penggalan 9 dan tinggal 1 elemen, maka pribadi masukan ke penggalan gres tapi terpaksa dengan 1 elemen saja.

                                                                                     
1        2         3       4           5       6           7       8         9

12   90       10  34     44  55      23  88      77
     1               2              3             4           5

Mari kita hapus 9 penggalan tadi.

12   90       10  34     44  55      23  88      77
     1               2              3             4           5

Sekarang kita lakukan sama persis menyerupai tadi, bandingkan elemen pertama di kedua bagian, kemudian masukan elemen yang terkecil ke penggalan yang baru. Jadi, kini kita bandingkan 12 dan 10, maka masukan 10 ke penggalan baru. Oh iya, jangan lupa penggalan yang gres mempunyai ukuran 2x penggalan yang lama. jadi penggalan gres mempunyai ukuran 2x2 = 4 elemen.

12   90          34          44  55    23  88      77
     1               2              3             4           5

10
 1

Bandingkan 34 dengan 12. Lebih kecil 12, maka masukan 12.

       90          34          44  55    23  88      77
        1            2              3             4           5

10  12
    1

Bandingkan 94 dengan 34, lebih kecil 34 , maka masukan 34.

       90                         44  55    23  88      77
        1            2              3             4           5

10  12  34
        1

Karena penggalan 1 dan penggalan 2 tinggal 1 elemen yaitu 90, maka pribadi masukan 90.

                                  44  55      23  88      77
        1            2              3             4           5

10  12  34  90
        1

Sekarang penggalan 1 (baru) sudah selesai, kini saatnya mengisi penggalan 2(baru) . Kita cek 44 dengan 23, lebih kecil 23. maka masukan 23

                                  44  55        88         77
        1            2              3             4           5

10  12  34  90         23
        1                      2

Cek, 88 dengan 44. Lebih kecil 44

                                     55           88         77
        1            2              3             4           5

10  12  34  90         23  44
        1                         2

Cek 55 dengan 88, lebih kecil 55.

                                                    88         77
        1            2              3             4           5

10  12  34  90         23  44  55
        1                             2

Karena 88 yaitu elemen terakir, maka pribadi masukan 88.

                                                                 77
        1            2              3             4           5

10  12  34  90         23  44  55 88
        1                               2

Karena 77 juga elemen terakir maka masukan 77 pribadi ke elemen 3(baru).

                                                                 
        1            2              3             4           5

10  12  34  90         23  44  55 88           77
        1                               2                     3

Lalu hapus 5 penggalan sebelumnya.

10  12  34  90         23  44  55 88           77
        1                               2                     3

Nah kini caranya sama, Ingat penggalan gres akan berukuran penggalan pertama dikali 2 yaitu 4x2 = 8. Bandingkan 10 dengan 23, lebih kecil 10.

      12  34  90         23  44  55 88           77
            1                           2                     3

10 
 1

Bandingkan 12 dengan 23. lebih kecil 12, masukan 12.

        34  90             23  44  55 88           77
            1                           2                     3

10 12
   1

Bandingkan 34 dengan 23, lebih kecil 23. masukan 23

        34  90                 44  55 88              77
            1                           2                     3

10 12 23
      1

Bandingkan 44 dengan 34, lebih kecil 34. masukan 34

           90                   44  55 88              77
            1                           2                     3

10 12 23 34
        1
  
Bandingkan 44 dengan 90, lebih kecil 44, maka masukan 44.

           90                       55 88                77
            1                           2                     3

10 12 23 34 44
           1

Bandingkan 55 dengan 90, lebih kecil 55, maka masukan 55.

           90                         88                   77
            1                           2                     3

10 12 23 34 44 55
            1

Bandingkan 88 dengan 90, lebih kecil 88, maka masukan 88.

           90                                                77
            1                           2                     3

10 12 23 34 44 55 88
                1

Karena tinggal  1 elemen pada penggalan 1 yaitu 90, maka pribadi masukan 90.

                                                               77
            1                           2                     3

10 12 23 34 44 55 88 90
                  1

Karena tinggal 1 elemen pada penggalan 3, maka masukan elemen tersebut ke penggalan 2(baru). Mengapa tidak di penggalan 1(baru) ? Karena menyerupai yang sudah saya katakan diatas, ukuran penggalan itu yaitu 4x2 = 8.

                                                               
            1                           2                     3

10 12 23 34 44 55 88 90            77
                  1                                2

Hapus 3 penggalan tersebut.

10 12 23 34 44 55 88 90            77
                  1                                2

Lalu caranya sama menyerupai tadi bandingkan elemen pertama pada penggalan 1 dan 2, yang lebih kecil, masukan duluan. Jadi, cek 10 dengan 77, lebih kecil 10, maka masukan 10.

     12 23 34 44 55 88 90            77
                  1                                2

10
 1

cek 12 dengan 77, lebih kecil 12, maka masukan 12.

     23 34 44 55 88 90            77
                  1                           2

10 12
   1

Cek 23 dengan 77, lebih kecil 23. masukan 23

          34 44 55 88 90            77
                  1                           2

10 12 23
      1

Cek 34 dengan 77, lebih kecil 34. masukan 34

           44 55 88 90                77
                  1                           2

10 12 23 34
        1

Cek 44 dengan 77, lebih kecil 44, masukan 44.

            55 88 90                    77
                  1                           2

10 12 23 34 44
           1

Cek 55 dengan 77, lebih kecil 55, masukan 55.

               88 90                      77
                  1                           2

10 12 23 34 44 55
           1

Cek 88 dengan 77, lebih kecil 77, masukan 77.

               88 90                      
                  1                           2

10 12 23 34 44 55 77
                1

Karena pada penggalan 2 sudah kosong, jadi 88 mau dicocokin dengan apa. jadi pribadi masukin pribadi aja 88 dan 90 secara urut.

                                     
                  1                           2

10 12 23 34 44 55 77 88 90
                1

hapus 2 penggalan tersebut.

10 12 23 34 44 55 77 88 90
                1

final ! SORTED !
10 12 23 34 44 55 77 88 90

Masih belum mengerti ? Yuk tonton video ini  !



Sumber http://komputer67.blogspot.com

0 Response to "Memahami Merge Sort Step By Step"

Posting Komentar

Iklan Atas Artikel

Iklan Tengah Artikel 1

Iklan Tengah Artikel 2

Iklan Bawah Artikel