PERBANDINGAN ALGORITMA SELECTION SORT, SHELL SORT, DAN MERGE SORT PADA DATA SAMPLING NUMERIK MENGGUNAKAN MATPLOTLIB

Authors

  • Riki Program Studi Teknik Informatika, Politeknik Negeri Pontianak, Pontianak
  • Miftah Faridz Program Studi Teknik Informatika, Politeknik Negeri Pontianak, Pontianak
  • Tri Syamdi Hidayah Program Studi Teknik Informatika, Politeknik Negeri Pontianak, Pontianak
  • Suharsono Program Studi Teknik Informatika, Politeknik Negeri Pontianak, Pontianak

Keywords:

Sorting, Python, Matplotlib, Algoritma, Perbandingan

Abstract

Sorting merupakan proses pengurutan sejumlah data berdasarkan nilai kunci tertentu. Data se-tiap elemen dari sebuah larik (senarai) yang belum terurut menjadi urutan yang telah diten-tukan. Pengurutan dapat dapat dilakukan dengan dua cara yaitu dari nilai terkecil ke nilai terbesar (ascending) atau sebaliknya (descending). Dalam kehidupan sehari-hari terdapat cara tertantu dalam melakukan pengurutan. Dalam pemrograman terdapat beberapa algoritma sort-ing, dimana masing-masing algoritma tersebut memiliki keunggulan masing-masing dilihat dari tingkat kompleksitas, skala data yang dikerjakan, hingga kecepatan pengurutan data. Pada penelitian ini menggunakan tiga algoritma sorting, yaitu selection sort, merge sort, dan shell sort yang akan membandingkan kecepatan pengurutan pada data numerik menggunakan ba-hasa pemrograman Python. Data yang akan diurutkan berupa data numerik yang urutannya teracak dan terurut. Jumlah data yang digunakan yaitu: 1000 sampai dengan 10000. Waktu eksekusi setiap algoritma sorting di ukur menggunakan library timeit dalam satuan millisecond (ms). Hasil perbandingan algoritma tersebut divisualisasikan dalam bentuk grafik menggunakan library Matplotlib. Pengujian pada data acak dengan 1000 sampel, shell sort lebih cepat dibandingkan merge sort dan selection sort dengan pengurutan 1.22 ms, namun pada data yang jumlah data yang besar (10000) merge sort lebih cepat dibandingkan shell sort dan selection sort. Pada data terurut menunjukkan hasil yang berbeda dengan data acak dimana Shell Sort lebih cepat dari merge sort dan selection sort dengan waktu eksekusi 0.59 ms untuk 1000 sampel, dan 10.62 ms untuk 10000 sampel. Dapat disimpulkan bahwa algoritma Shell Sort lebih cepat dalam mengurutkan data numerik baik data acak atau urut.

Downloads

Published

2024-08-31