35
BAB 4 IMPLEMENTASI SISTEM
4.1. Pendahuluan
Masalah ataupun problema yang diangkat dalam penelitian ini adalah bagaimana menganalisis kompleksitas waktu Big O dengan menggunakan algoritma Bucket
Sort, Strand Sort dan Quick Sort 2 Pivot. Diagram Ishikawa fishbone diagram biasanya disebut juga diagram
sebab akibat
yang biasanya
digunakan untuk
mengidentifikasi masalah yang ada pada sistem yang akan dirancang. Dengan diagram ini kita dapat mengidentifikasi, mengeksplorasi dan menggambarkan suatu
masalah dengan mengikutsertakan sebab dan akibat dari permasalahan dalam visual grafis. Dengan demikian proses pencapaian sistem akan sangat dibantu dengan
adanya Diagram Ishikawa seperti pada gambar 4.1.
pengurutan data lebih cepat memudahkan pekerjaan manusia kesalahan dalam pengurutan minim
Prosesor Core i3 2 GHz Metode Bucket sort, Strand Sort RAM, 2 GB
Dan Quick sort 2 pivot Aplikasi Pemrograman C
OS Win 7 ultimate
Gambar 4.1 Diagram Ishikawa untuk Implementasi Penelitian
4.2 Generate Data
Generate data merupakan proses untuk membangkitkan data acak. Dalam hal ini, kita ambil contoh dengan Max Item n=10 dan Max Item Value= 1000. Dalam proses
Compile, akan terlihat berapa lama waktu running time dan grafik dari proses Algoritma Sorting. Hasilnya dapat kita lihat pada gambar 4.2
Material Manusia
Mesin Metode
Untuk membuat implementasi serta Mengetahui kompleksitas
dan running time dari ketiga algoritma tersebut
Universitas Sumatera Utara
36
Gambar 4.2 Tampilan Utama Sorting Data
4.3 Hasil Uji Coba
Pada penelitian ini dilakukan pengamatan pada 3 metode pengurutan yaitu Bucket Sort, Strand Sort, dan Quick Sort 2 Pivot. Diberikan nilai input Max Item Value 1000
dan 1000000, sedangkan nilai Max Item pada 10, 500 dan 1000 untuk masing-masing Max Item Value tersebut. Dan data yang diberikan untuk ketiga kondisi tersebut juga
sama. Berikut akan ditampilkan hasil pengamatan yang sudahdilakukan.
4.3.1 Pengurutan pada Max Item = 10
Pengurutan pada Max Item 10 dilakukan dengan membandingkan pada 2 nilai Max Item Value yaitu Max Item Value = 1000 dan 1000000.
Universitas Sumatera Utara
37
Gambar 4.3 Item Tampilan hasil pada max item 10 dan Max Value 1000
a. Max Item Value = 1000
Pada kondisi max item 10 dan Max Item Value 1000 terlihat hasil pengurutan data seperti gambar 4.4 Dari ketiga metode yang digunakan dapat diamati bahwa pada
kondisi ini waktu eksekusi yang paling cepat yaitu pada metode strand sort sebesar 354,8 x 10
-3
sec, bucket sort sebesar 650,9x 10
-3
sec, selanjutnya quick sort 2 pivot sebesar 1163,6 x 10
-3
sec. Dari ketiga nilai eksekusi tersebut metode quick sort 2 pivot memiliki waktu eksekusi yang paling lama untuk kondisi max item 10. Dari hasil ini
terlihat bahwa metode strand sort cukup baik dalam melakukan sorting dibandingkan bucket sort dan quick sort 2 pivot untuk kondisi ini.
a. Bucket sort
b. Strand sort c. Quick sort 2 pivot
Gambar 4.4 Pengurutan pada Max Item 10 Max Item Value = 1000
Universitas Sumatera Utara
38
Pada gambar 4.5 jelas telihat perbedaan kompleksitas waktu dari ketiga metode sorting yang ditampilakan pada grafik, yang menujukan waktu terbaik adalah strand
sort dan terburuk ada pada algoritma quick sort 2 pivot.
Gambar 4.5 Grafik perbandingan ketiga pengurutan untuk Max Item 10 Max Item Value = 1000
b. Max Item Value = 1000000
Pengurutan pada Max Item 10 dilakukan denganMax Item Value yaitu Max Item Value = 1000000.
Gambar 4.6 Tampilan hasil pada max item 10 dan Max Item Value 1000000 Pada kondisi Max item 10 dan Max Item Value 1000000 dengan data yang diberikan
pada ketiga kondisi yang sama maka diperoleh hasil pengurutan seperti pada gambar 4.7 Pada kondisi ini waktu eksekusi tercepat adalah dengan metode strand sort sebesar
4,3 x 10
-3
sec, selanjutnya metode quick sort 2 pivot sebesar 4,8 x 10
-3
sec, dan yang paling lama adalah bucket sort sebesar 275910,7x 10
-3
sec. Pada kondisi ini metode bucket sort memerlukan waktu paling lama untuk eksekusi bila dibandingkan dengan
kedua metode lainnya. Dari hasil ini terlihat bahwa tidak ada perbedaan yang signifikan antara strand sort dan quick sort 2 pivot, sedangkan terhadap bucket sort
memiliki perbedaan yang sangat signifikan.
Universitas Sumatera Utara
39
a. Bucket sort b. Strand sort
c. Quick sort 2 pivot Gambar 4.7 Hasil pengurutan pada Max item 10 dan
Max Item Value 1000000
Grafik pada gambar 4.8 menunjukan perbedaan kompleksitas waktu untuk ketiga metode pengurutan tidak begitu signifikan antara strand sort dan quick sort 2 pivot,
sedangkan dengan bucket sort sangat jauh signifikan. dan strand sort pada percobaan ini lebih unggul dari kedua pengurutan lainnya.
Gambar 4.8 Grafik perbandingan ketiga pengurutan untuk Max Item 10 Max Item Value = 1000000
4.3.2 Pengurutanpada Max Item = 500
Pengurutan pada Max Item 500 dilakukan dengan membandingkan pada 2 nilai Max Item Value yaitu Max Item Value = 1000 dan 1000000.
Universitas Sumatera Utara
40
Gambar 4.9 Pengurutan Pada Max Item 500 Max Item Value=1000 a.
Max Item Value = 1000 Pada kondisi Max item 500 dan Max Item Value 1000 dengan data yang diberikan
pada ketiga kondisi sama maka diperoleh hasil pengurutan seperti pada gambar 4.9. Pada kondisi ini waktu eksekusi tercepat pada metode bucket sort sebesar 99,2 x 10
-3
sec, selanjutnya quick sort 2 pivot sebesar 240,4 x 10
-3
sec dan strand sort sebesar 661,7 x 10
-3
sec. Pada kondisi ini metode strand sort memerlukan waktu paling lama untuk eksekusi bila dibandingkan dengan kedua metode lainnya.
a. Bucket sort b. Strand sord c. Quick sort 2 pivot
Gambar 4.10 Hasil pengurutan pada Max item 500 dan Max Item Value 1000
Universitas Sumatera Utara
41
Percobaan ini memperlihatkan bahwa Bucket sort jauh lebih unggul kompleksitas waktunya daripada strand sort dan quick sort 2 pivot untuk max item 500 dan max
item value 1000, terlihat pada grafik pada gambar 4.11 Namun bucket sort dan strand sort memiliki perbedaan yang signifikan dan untuk percobaan ini bucket sort lebih
unggul dari kedua lainnya.
Gambar 4.11 Grafik perbandingan ketiga pengurutan untuk Max Item 500 Max Item Value = 1000
b. Max Item Value = 1000000
Pengurutan pada Max Item 500 dilakukan dengan Max Item Value yaitu Max Item Value = 1000000.
Gambar 4.12 Pengurutan Pada Max Item 500 Max Item Value=1000000
Universitas Sumatera Utara
42
Pada kondisi Max item 500 dan Max Item Value 1000000 dengan data yang diberikan pada ketiga kondisi sama maka diperoleh hasil pengurutan seperti pada gambar 4.13
Pada kondisi ini waktu eksekusi tercepat adalah metode quick sort 2 pivot sebesar 230,1 x 10
-3
sec, selanjutnya strand sort sebesar 614,8 x 10
-3
sec dan yang paling lambat adalah metode bucket sort sebesar 417591,5 x 10
-3
sec. Pada kondisi ini metode bucket sort memerlukan waktu paling lama untuk eksekusi bila dibandingkan
dengan kedua metode lainnya dan dengan perbedaan yang sangat signifikan.
a. Bucket sort b. Strand sort
c. Quick sort 2 pivot Gambar 4.13 Hasil pengurutan pada Max item 500 dan
Max Item Value 1000000 Metode pengurutan yang paling unggul adalah metode quick sort 2 pivot, memiliki
waktu yang lebih baik dari strand sort dan bucket sort walaupun quick sort 2 pivot dengan strand sort memiliki durasi waktu yang hampir sama, tapi quick sort 2 pivot
dan strand sort memiliki perbedaan yang sangat signifikan dengan bucket sort. Berikut grafik perbandingannya.
Gambar 4.14 Grafik perbandingan ketiga pengurutan untuk Max Item 500 Max Item Value = 1000000
Universitas Sumatera Utara
43
4.3.3 Pengurutanpada Max Item = 1000
Pengurutan pada Max Item 1000 dilakukan dengan membandingkan pada 2 nilai Max Item Value yaitu Max Item Value = 1000 dan 1000000.
Gambar 4.15 Pengurutan Pada Max Item 1000 Max Item Value=1000 a.
Max Item Value = 1000 Pada kondisi Max item 1000 dan Max Item Value 1000 dengan data yang sama pada
ketiga kondisi maka diperoleh hasil pengurutan seperti pada gambar 4.16. Pada kondisi ini waktu eksekusi tercepat adalah metode bucket sort sebesar 114,8 x 10
-3
sec, selanjutnya metode uick sort 2 pivot sebesar 474 x 10
-3
sec dan metode strand sort sebesar 2654,7 x 10
-3
sec. Pada kondisi ini metode strand sort memerlukan waktu paling lama untuk eksekusi bila dibandingkan dengan kedua metode lainnya. Terlihat
bahwa metode bucket sort dan quick sort 2 pivot membutuhkan waktu semakin cepat dibandingkan dengan metode strand sort dengan kondisi jumlah data yang semakin
besar dan jumlah max item value yang semakin besar juga.
Universitas Sumatera Utara
44
a. Bucket sort b. Strand sort
c. Quick sort 2 pivot Gambar 4.16 Hasil pengurutan pada Max item 1000 dan
Max Item Value 1000
Kecepatan kompleksitas waktu Bucket sort selalu lebih baik dibandingkan dengan kedua pengurutan lainnya jika max item dan max item valuenya bernilai besar atau
sama. Perbedaan kompleksitas waktu telihat pada grafik dibawah ini.
Gambar 4.17 Grafik perbandingan ketiga pengurutan untuk Max Item 1000 Max Item Value = 1000
Universitas Sumatera Utara
45
b. Max Item Value = 1000000
Pengurutan pada Max Item 1000 dilakukan dengan Max Item Value yaitu Max Item Value = 1000000.
Gambar 4.18 Pengurutan Pada Max Item 1000 Max Item Value=1000000 Pengurutan pada Max Item = 1000 dilakukan untuk data dengan Max Item Value
1000000. Sedangkan data yang diberikan kepada masing-masing kondisi adalah data dengan bentuk dan jumlah yang sama. Gambar 4.18. Merupakan hasil uji coba pada
kondisi ini. Pada kondisi ini waktu eksekusi tercepat adalah dengan metode Quick sort 2 pivot sebesar 1410 x 10
-3
sec, selanjutnya yaitu dengan metode Strand sort sebesar 2768,1 x 10
-3
sec dan yang paling lambat adalah metode Bucket sort sebesar 160704,7 x 10
-3
sec. Pada kondisi ini metode bucket sort memerlukan waktu paling lama untuk eksekusi bila dibandingkan dengan Strand sort dan Quick sort 2 pivot.
Dengan Max Item Value yang semakin besar, metode Quick sort 2 pivot masih lebih baik dibandingkan dengan metode strand sort dan sangat-sangat lebih baik daripada
Bucket sort untuk data yang semakin banyak. Dari hasil ini juga terlihat bahwa, dengan jumlah data yang semakin besar, metode Bucket sort membutuhkan waktu
yang semakin besar dibandingkan dengan metode lain.
Universitas Sumatera Utara
46
a. Bucket sort b. Strand sort
c. Quick sort 2 Pivot Gambar 4.19 Hasil pengurutan pada Max item 1000 dan
Max Item Value 1000000 Metode Quick sort 2 pivot dan metode strand sort selalu lebih baik dari metode
Bucket sort. Pada grafik jelas telihat keunggulan 2 pengurutan yang penulis tambahakan dengan max item 1000 dan max value 1000000, dan untuk mengurutkan
data yang sangat banyak disarankan untuk menggunakan metode Quick sort 2 pivot dan Strand sort, karena jika mengurutkan data dengan jumlah yang sangat banyak
akan sangat lama jika menggunakan metode Bucket sort. Perbedaan kompleksitas terlihat pada grafik dibawah ini.
Gambar 4.20 Grafik perbandingan ketiga pengurutan untuk Max Item 1000 Max Item Value = 1000000
4.4 Pembahasan
Pada bagian ini akan dibahas hasil uji coba yang telah dilakukan. Untuk uji coba dengan Max Item 10 dengan Max Item Value 1000 dan 1000000, terlihat perbedaan
yang begitu signifikan antara ketiga algoritma yang digunakan. Dan metode strand sort memiliki waktu eksekusi yang lebih baik daripada Quick sort 2 pivot dan Bucket
sort, terdapat perbedaan yang sangat tipis antara strand sort dan quick sort 2 pivot, tapi sangat berbeda terhadap Bucket sort.perbedaan tersebut belum terlalu berpengaruh
karena jumlah data yang masih kecil.
Universitas Sumatera Utara
47
Pada pengujian Max Item 500 dengan Max Item Value 1000 dan 1000000, perbedaan waktu eksekusi sangat terlihat antara ketiga algoritma yang diujikan.
Perbedaan waktu eksekusi yang dihasilkan dalam pengujian yang dilakukan antara bucket sort dan quick sort 2 pivot memiliki perbedaan yang tidak begitu signifikant
dan memiliki perbedaan waktu yang sedikit, sedangkan dengan menggunakan metode strand sort sangat berbeda, jauh lebih lama dari kedua algoritma lainnya. Tapi dengan
Max Item Value 1000 malah sebaliknya, bucket sort sangat lama dan sangat lambat dibandingkan strand sort dan quick sort 2 pivot. Quick sort 2 pivot menjadi metode
yang paling cepat. Dalam pengujian ini kita dapat megetahui bahwa ada kelebihan dan kekurangan dari ketiga algoritma tersebut, itu tergantung kepada besar kecilnya data
yang ingin diurutkan dan apa yang dibutuhkan oleh pengguna user. Dari hasil pengujian bahwa Quick sort 2 pivot lebih baik dari kedua metode
ini, selanjutnya strand sort dan terakhir bucket sort untuk mengurutkan data yang banyak. Sedangkan jika kita ingin mengurutkan data yang jumlahnya sedikit, kita
lebih baik menggunakan metode strand sort. Dan jika kita ingin mengurutkan data yang max item nya hampir sama dengan max item value, lebih baik kita menggunakan
metode Bucket sort.
4.5 Hasil Perhitungan Kompleksitas Big Theta �