diskusi.tech (beta) Community

loading...
Cover image for Penjabaran Merge Sort

Penjabaran Merge Sort

ariya profile image Ariya Hidayat ・1 min read

Algoritma Merge Sort terkenal efisien, tetapi tetap sederhana dalam implementasinya. Silakan tengok penjabarannya dengan menggunakan JavaScript dalam video berikut ini!

Implementasi fungsi merge sendiri adalah sebagai berikut:

function merge(A, B) {
    let C = [];
    while(A.length > 0 && B.length > 0) {
        if (A[0] < B[0]) {
            C.push(A.shift());
        } else {
            C.push(B.shift());
        }
    }
    C = C.concat(A);
    C = C.concat(B);
    return C;
}
Enter fullscreen mode Exit fullscreen mode

yang bisa langsung dicemplungkan ke dalam:

function sort(data) {
    if (data.length <= 1) return data;
    if (data.length === 2) {
        if (data[0] < data[1]) return data;
        return [data[1], data[0]];
    }
    const mid = data.length >> 1;
    const left = data.slice(0, mid);
    const right = data.slice(mid);
    const sortedLeft = sort(left);
    const sortedRight = sort(right);
    return merge(sortedLeft, sortedRight);
}
Enter fullscreen mode Exit fullscreen mode

Ayo kita belajar dan tetap semangat!

Discussion

pic
Editor guide
Collapse
rozakbuhari profile image
Fathurozak Buhari

Penjelasan dari mas Ariya simple dan mudah dimengerti seperti biasa