Anda di halaman 1dari 7

PRAKTIKUM STRUKTUR DATA

TUGAS PENDAHULUAN
PERCOBAAN 2
SORTING

Fannisa Nurhaffifi
PSTI A
2215061009

PROGRAM STUDI TEKNIK INFORMATIKA


FAKULTAS TEKNIK
UNIVERSITAS LAMPUNG
1. Jelaskan apa itu sorting!
Sorting atau yang sering disebut dengan pengurutan adalah proses untuk Menyusun
suatu himpunan objek berdasarkan aturan tertentu, seperti berdasarkan jenisnya,
kelompok, dari terkecil (ascending) dan dari terbesar (descending). Keuntungan
dari sorting adalah yang pertama data mudah dicari, data mudah diperiksa, dan
mudah untuk menemukan kesalahan pada data.

2. Jelaskan macam-macam jenis sorting yang kamu ketahui


Sorting memiliki beberapa macam metode, yaitu:
• Insertion sort (metode penyisipan)
Cara kerja dari insertion sort adalah dengan cara menyisipkan elemen data pada
posisi yang tepat. Insertion sorting sangat mirip dengan konsep permainan kartu,
yang dimana setiap kartu disisipkan secara berurutan dari kiri ke kanan dengan
besaran kartu yang sudah ditentukan, dari terkecil maupun terbesar. Tetapi
penggeseran kartu ini memiliki syarat yaitu, apabila kartu yang disisipkan pada
posisi tertentu maka kartu yang lain akan bergeser maju atau mundur tergantung
dengan besarannya. Contoh proses pengurutan data array menggunakan metode
insertion sort dapat dilihat pada gambar dibawah ini:

• Selection sort
Cara kerja dari selection sort adalah akan dicari elemen yang memiliki nilai terkecil
dan terbesar kemudian akan ditepatkan ke posisi yang tepat. Metode ini sering
disebut dengan metode maksimum atau minimum. Konsepnya adalah dengan
memilih elemen minimum kemudian menukarkannya dengan elemen yang paling
kiri untuk ascending dan elemen yang paling kanan untuk descending. Proses
pengurutan data dalam array menggunakan algoritma selection sort dapat dilihat
pada gambar di bawah:
• Bubble sort
Cara kerja dari bubble sort adalah dengan cara membandingkan elemen sebelum
dan sesudahnya, ketika akan diurutkan secara ascending maka apabila elemen
sebelum lebih besar daripada elemen sesudah maka elemen tersebut akan ditukar.
Sedangkan, ketika akan diurutkan secara descending, apabila elemen sebelum lebih
kecil daripada elemen sesudah maka elemen tersebut akan ditukar. Misalkan
terdapat sebuah array dengan elemen-elemennya “4 6 8 6 5” . dan ingin diurutkan
dari yang terkecil hingga terbesar, maka prosesnya akan seperti ini:

Proses pertama
(4 6 8 6 5) menjadi (4 6 8 6 5)
(4 6 8 6 5) menjadi (4 6 8 6 5)
(4 6 8 6 5) menjadi (4 6 6 8 5)
(4 6 6 8 5) menjadi (4 6 6 5 8 )

Proses kedua
(4 6 6 5 8) menjadi (4 6 6 5 8 )
(4 6 6 5 8) menjadi (4 6 6 5 8 )
(4 6 6 5 8) menjadi (4 6 5 6 8 )
(4 6 5 6 8) menjadi (4 6 5 6 8 )

Proses ketiga
(4 6 5 6 8) menjadi (4 6 5 6 8 )
(4 6 5 6 8) menjadi (4 5 6 6 8 )
(4 5 6 6 8) menjadi (4 5 6 6 8 )
(4 5 6 6 8) menjadi (4 6 5 6 8 )
Proses keempat
(4 5 6 6 8) menjadi (4 5 6 6 8 )
(4 5 6 6 8) menjadi (4 5 6 6 8 )
(4 5 6 6 8) menjadi (4 5 6 6 8 )
(4 5 6 6 8) menjadi (4 5 6 6 8 )

Pada proses diatas sebenarnya pada proses ketiga array telah urut, namun
algoritma tetap berjalan karena definisi terurut dalan algoritma bubble sort
adalah tidak ada satupun penukaran pada prosesnya.

3. Jelaskan elementary sorting methods dan advanced sorting methods!


Sorting adalah proses pengurutan/pengaturan elemen elemen data dalam urutan
tertentu, terdapat dua kategori umum dalam algoritma sorting, yaitu advanced
sorting methods dan elementary sorting methods.
• Elementary Sorting Methods (metode pengurutan dasar)
Elementary sorting methods adalag metode pengurutan sederhana yang mudah
untuk dipahami. Penggunaan elementary sorting methods cocok untuk
mengurutkan data yang kecil dan Ketika efisiensi bukan prioritas utama. Berikut
adalah metode pengurutan dasar,
- Bubble Sort
- Selection Sort
- Insertion Search
- Shellsort

• Advanced Sorting Methods


Advanced sorting methods adalah algoritma pengurutan yang lebih efisien dan bisa
digunakan dalam data yang besar, beberapa metodenya adalah,
- Quick Sort
- Merge Sort
- Heap Sort
- Radix Sort
4. Jelaskan perbedaan antara algoritma bubble sort dan algoritma exchange
sort? Berikan contoh masing-masing kedua algoritma tersebut!
• Bubble Sort
Cara kerja dari bubble sort adalah dengan cara membandingkan elemen sebelum
dan sesudahnya, ketika akan diurutkan secara ascending maka apabila elemen
sebelum lebih besar daripada elemen sesudah maka elemen tersebut akan ditukar.
Sedangkan, ketika akan diurutkan secara descending, apabila elemen sebelum
lebih kecil daripada elemen sesudah maka elemen tersebut akan ditukar.
Contohnya :
Misalkan terdapat sebuah array dengan elemen-elemennya “4 6 8 6 5” . dan ingin
diurutkan dari yang terkecil hingga terbesar, maka prosesnya akan seperti ini:

Proses pertama
(4 6 8 6 5) menjadi (4 6 8 6 5)
(4 6 8 6 5) menjadi (4 6 8 6 5)
(4 6 8 6 5) menjadi (4 6 6 8 5)
(4 6 6 8 5) menjadi (4 6 6 5 8 )

Proses kedua
(4 6 6 5 8) menjadi (4 6 6 5 8 )
(4 6 6 5 8) menjadi (4 6 6 5 8 )
(4 6 6 5 8) menjadi (4 6 5 6 8 )
(4 6 5 6 8) menjadi (4 6 5 6 8 )

Proses ketiga
(4 6 5 6 8) menjadi (4 6 5 6 8 )
(4 6 5 6 8) menjadi (4 5 6 6 8 )
(4 5 6 6 8) menjadi (4 5 6 6 8 )
(4 5 6 6 8) menjadi (4 6 5 6 8 )

Proses keempat
(4 5 6 6 8) menjadi (4 5 6 6 8 )
(4 5 6 6 8) menjadi (4 5 6 6 8 )
(4 5 6 6 8) menjadi (4 5 6 6 8 )
(4 5 6 6 8) menjadi (4 5 6 6 8 )

Pada proses diatas sebenarnya pada proses ketiga array telah urut, namun
algoritma tetap berjalan karena definisi terurut dalan algoritma bubble sort
adalah tidak ada satupun penukaran pada prosesnya.
• Exchange Sort
Cara kerja dari Exchange sort adalah akan dicari elemen yang memiliki nilai
terkecil dan terbesar kemudian akan ditepatkan ke posisi yang pertama. Metode ini
sering disebut dengan metode maksimum atau minimum. Konsepnya adalah
dengan memilih elemen minimum kemudian menukarkannya dengan elemen yang
paling kiri untuk ascending dan elemen yang paling kanan untuk descending.
Proses pengurutan data dalam array menggunakan algoritma exchange sort dapat
dilihat pada gambar di bawah:

• Perbedaannya
Bubble sort membandingkan elemen sebelum dan sesudahnya, sedangkan
Exchange sort adalah akan dicari elemen yang memiliki nilai terkecil dan terbesar
kemudian akan ditepatkan ke posisi yang pertama

5. Tuliskan sejauh mana pemahaman kamu terhadap sorting!


Sejauh ini pemahaman saya mengenai sorting adalah proses untuk Menyusun suatu
himpunan objek berdasarkan aturan tertentu, seperti berdasarkan jenisnya,
kelompok, dari terkecil (ascending) dan dari terbesar (descending). terdapat dua
kategori umum dalam algoritma sorting, yaitu advanced sorting methods dan
elementary sorting methods.
Daftar Pustaka
Siahaan, V., & Sianipar, R. H. (2020). TUTORIAL Bahasa C++ Untuk
Programmer. BALIGE PUBLISHING.

Retnoningsih, Endang “Algoritma Pengurutan Data (Sorting) Dengan Metode


Insertion Sort dan Selection Sort.” Vol. 3, No. 1, (Desember 2018): 95 –
106.
Sonita, Anisya “ ANALISIS PERBANDINGAN ALGORITMA BUBBLE SORT,
MERGE SORT, DAN QUICK SORT DALAM PROSES PENGURUTAN
KOMBINASI ANGKA DAN HURUF.“ Volume II Nomor 2, (September
2015): 75-80.

Anda mungkin juga menyukai