Sorting dengan Metode Insertion dan Merge Sort

Sorting dengan Metode Insertion dan Merge Sort

Insertion Sort   
Posting sebelumnya dibahas tentang Bubble Sort  dan Selection Sort, kali ini akan membahas Insertion Sort. Mirip dengan cara orang mengurutkan kartu, selembar demi selembar kartu diambil
dan disisipkan (insert) ke tempat yang seharusnya.  Pengurutan dimulai dari data ke-2 sampai dengan data terakhir, jika ditemukan data yang lebih kecil , maka akan ditempatkan ( diinsert ) diposisi yang seharusnya. Pada penyisipan elemen, maka elemen-elemen lain akan bergeser ke belakang.

Contoh dari Insertion Sort
 










Sorting dengan Metode Selection Sort

Sorting dengan Metode Selection Sort

    Ini adalah post lanjutan dari post Metode Bubble Sort. Kali  ini akan dijelaskan tentang sorting dengan metode selection sort yang merupakan kombinasi antara sorting dan searching Untuk setiap proses, akan dicari elemen-elemen yang belum diurutkan yang memiliki  nilai terkecil atau terbesar akan dipertukarkan ke posisi yang tepat di dalam array. Misalnya untuk putaran pertama, akan dicari data dengan nilai terkecil dan data ini akan ditempatkan di indeks terkecil (data[0]), pada putaran kedua akan dicari data kedua terkecil, dan akan ditempatkan di indeks kedua (data[1]). Selama proses, pembandingan dan pengubahan hanya dilakukan pada indeks pembanding saja, pertukaran data secara fisik terjadi pada akhir proses. Berikut Proses dari selection sort
Sorting dengan Bubble Sort

Sorting dengan Bubble Sort

Sorting adalah pengurutan atau merangkai data dalam suatu metode atau cara tertentu yang sebelumnya data tersebut tidak berurutan. data tersebut bisa terurut secara ascending atau berurutan dari nilai terkecil ke nilai yang terbesar atau secara descending atau berurutan dari nilai terbesar ke nilai terkecil.

Deklarasi array untuk Sorting
deklarasi secara global
int data[100];
int n; //jumlah data

Prosedur Tukar 2 Buah Data :
 void tukar(int a,int b){ 
int tmp;  tmp = data[a];
data[a] = data[b];
data[b] = tmp;
}