SainTech Fakultas Matematika dan Ilmu Pengetahuan Alam Universitas Udayana ISSN: 2541-0636 “Penguatan Riset Perguruan Tinggi untuk Pengembangan Sains dan Teknologi yang Berkelanjutan” Bukit Jimbaran, 19 November 2016
SainTechFakultas Matematika danIlmu Pengetahuan Alam
Universitas Udayana
ISSN: 2541-0636
“Penguatan Riset Perguruan Tinggi untuk Pengembangan Sains dan Teknologi yang Berkelanjutan”
Bukit Jimbaran, 19 November 2016
PROSIDING SEMINAR NASIONAL SAINTECH 2016 ISSN: 2541-0636
Bukit Jimbaran – 19 November 2016 | i
TIM PROSIDING
Penanggung Jawab:
Drs. Ida Bagus Made Suaskara, M.Si.
Pengarah:
Drs. I Made Satriya Wibawa, M.Si.
Anak Agung Bawa Putra, S.Si., M.Si.
Drs. I Wayan Santiyasa, M.Si.
Editorial Team
Chief-in-Editor
Dr. Dra. Wiwik Susanah Rita, M.Si.
Associate Editor
Desak Putu Eka Nilakusmawati, S.Si., M.Si.
Editorial Board:
Prof. Dr. Ni Nyoman Tri Puspaningsih, M.Si. (UNAIR)
Prof. Dr. I Nyoman Budiantara (ITS)
Dr. I Ketut Gede Suhartana, S.Kom., M.Kom. (UNUD)
Dr. Dra. Ni Wayan Bogoriani, M.Si. (UNUD)
Dr. Drs. I Made Oka Adi Parwata, M.Si. (UNUD)
Made Susilawati, S.Si., M.Si. (UNUD)
Ir. I Komang Dharmawan, M.Math., Ph.D. (UNUD)
Ir. G.K. Gandhiadi, M.T. (UNUD)
Dr. rer.nat. Drs. I Made Agus Gelgel Wirasuta, Apt., M.Si. (UNUD)
Dr. Sagung Chandra Yowani, S.Si., Apt., M.Si. (UNUD)
Dr. Dra. Putu Adriani Astiti, M.Si. (UNUD)
Dr. Dra. Meitini Wahyuni Proborini, M.Sc.St. (UNUD)
Dr. Drs. Anak Agung Ngurah Gunawan, M.Si. (UNUD)
Dr. Ir. Herry Suyanto, M.T. (UNUD)
Dra. Luh Gede Astuti, M.Kom. (UNUD)
I Dewa Made Bayu Atmaja Darmawan, S.Kom., M.Cs. (UNUD)
Sekretariat:
Dr. I Nengah Wirajana, S.Si., M.Si.
Dr. I Ketut Ginantra, S.Pd., M.Si.
I Gusti Ayu Made Srinadi, S.Si., M.Si.
Agus Muliantara, S.Kom., M.Kom.
Ni Made Pitri Susanti, S.Farm., M.Farm., Apt.
I Gusti Agung Adnyana Putra, S.Si., M.Si.
Desain Grafis:
I Komang Ari Mogi, S.Kom., M.Si.
I Gede Artha Wibawa, S.T., M.Kom.
PROSIDING SEMINAR NASIONAL SAINTECH 2016 ISSN: 2541-0636
ii | Bukit Jimbaran, Bali – 19 November 2016
KATA PENGANTAR
Pertama-tama, kita panjatkan puja dan puji syukur kehadirat Ida Sanghyang Widhi
Wasa/Tuhan Yang Maha Esa, karena atas berkat_Nyalah maka Prosiding Seminar
Nasional Sains dan Teknologi (SainTech) yang pertama (I) dapat selesai sesuai dengan
harapan. Seminar Nasional Sains dan Teknologi (SainTech) yang pertama (I) ini
mengambil tema “Penguatan Riset Perguruan Tinggi untuk Pengembangan Sains dan
Teknologi yang Berkelanjutan” yang diselenggarakan oleh Fakultas MIPA Universitas
Udayana pada tanggal 19 November 2016, bertempat di Universitas Udayana Kampus
Bukit Jimbaran.
Saat ini, kesadaran akan pentingnya publikasi untuk pengembangan ilmu melalui
berbagai penelitian khususnya bidang sains dan teknologi masih dipandang rendah.
Sebagai pendidik, salah satu tugas pokok dan fungsi adalah melakukan penelitian yang
kemudian dipublikasikan untuk dapat disebarkan kepada masyarakat luas. Sebagai
mahasiswa salah satu syarat untuk dapat merah gelar S1 wajib mempunyai publikasi
ilmiah. Oleh karena itu Fakultas MIPA yang bekerja sama dengan Badan Eksekutif
Mahasiswa melaksanakan kegiatan pendidikan kepada masyarakat dalam bentuk seminar
nasional SainTech ini .
Adapun tujuan dari kegiatan ini yaitu: meningkatkan pengetahuan dan pemahaman
tentang keilmuan sains dan teknologi; meningkatkan kepedulian tentang pentingnya
publikasi dari hasil penelitian Hibah Unggulan Program Studi (HUPS) dan dosen muda;
memberikan wahana dalam publikasi ilmiah bagi peneliti, dosen, dan mahasiswa; dan
sebagai sarana untuk lebih mempererat civitas akademika dan masyarakat lain.
Peserta kegiatan seminar nasional ini dihadiri oleh dosen, mahasiswa, dan peneliti
lain yang berjumlah 60 pemakalah pendamping dan 300 peserta dan tamu undangan.
Invited speaker dalam seminar ini mengundang Prof. Dr. Ni Nyoman Tri Puspaningsih,
M.Si. (UNAIR) dan Prof. Dr. I Nyoman Budiantara (ITS). Atas nama panitia, kami
mengucapkan terimakasih yang sebesar-besarnya atas kesediaan beliau semua hadir dalam
acara ini.
Kami dari pihak panitia mengucapkan terima kasih kepada semua peserta dan
pemakalah yang telah mengirimkan makalahnya untuk diterbitkan pada prosiding seminar
ini. Terima kasih pula kepada Rektor Universitas Udayana, pihak Fakultas MIPA
Universitas Udayana, pihak sponsor dan panitia baik dari staf dosen, staf pegawai,
panitia mahasiswa, serta semua pihak yang turut memberikan kontribusi atas suksesnya
pelaksanaan kegiatan ini.
Ketua Panitia
Dr. I Ketut Gede Suhartana, S.Kom., M.Kom
PROSIDING SEMINAR NASIONAL SAINTECH 2016 ISSN: 2541-0636
Bukit Jimbaran, Bali – 19 November 2016 | iii
DAFTAR ISI Halaman
Tim Prosiding............................................................................................ ............ i
Kata Pengantar.......................................................................... ............................ ii
Daftar Isi ............................................................................................................... iii
BIDANG MATEMATIKA, STATISTIKA, DAN KOMPUTASI
MERANCANG DAN MEMBUAT GAME SEDERHANA FROZEN LINUX
DENGAN TEKNOLOGI GIDEROS
Nico Prasetya Sukamuljo, I Wayan Santiyasa . .................................................... 1-5
PERAMALAN KUNJUNGAN WISATAWAN MANCANEGARA KE BALI
MENGGUNAKAN MODEL DERET WAKTU MULTIVARIAT
I Wayan Sumarjaya, Ni Ketut Tari Tastrawati ..................................................... 6-12
STUDI MODEL PEMBERDAYAAN PEDAGANG KAKI LIMA BERDASARKAN
KARAKTERISTIK SOSIAL EKONOMI
Made Susilawati, Desak Putu Eka Nilakusmawati ............................................... 13-20
REKOMENDASI MUSIK BERDASARKAN KEMIRIPAN AUDIOMENGGUNAKAN
K-NEAREST NEIGHBOR
Gst. Ayu Vida Mastrika Giri ................................................................................. 21-26
ANALISIS STRUKTURAL MODEL KUNJUNGAN ULANG WISATAWAN
KE KABUPATEN BADUNG
Eka N. Kencana, Trisna Darmayanti..................................................................... 27-36
ANALISIS AVERAGE CASE RUNNING TIME ALGORITMA QUICKSORT
Kadek Arya Saputra, I Gusti Ngrh. Lanang Wijayakusuma ................................. 37-44
IMPLEMENTASI ALGORITMA MODERATE MULTIPLE REGRESSIONS
(MMR) DALAM OPTIMALISASI PEMBERIAN BEASISWA BANTUAN
PENDIDIKAN DENGAN METODE CERTAINTY FACTOR
I Wayan Santiyasa, I Komang Ari Mogi ............................................................... 45-52
APLIKASI SISTEM PAKAR MENGGUNAKAN METODE
PENALARAN FORWARD CHAINNING BERBASIS WEB (STUDI
KASUS SISTEM PAKAR PENDIAGNOSIS KEHAMILAN EKTOPIK)
Luh Gede Astuti, Luh Arida Ayu Rahning Putri .................................................. 53-58
PERSEPSI UMAT HINDU BALI TERHADAP KARAKTERISTIK PURA SAD
KAHYANGAN
Ketut Jayanegara, Eka N. Kencana, Komang Gde Sukarsa .................................. 59-66
RESEARCH CHALENGE PADA ELECTROENCEPHALOGRAPHY (EEG)
Agus Muliantara, I Made Widiartha, I Putu Gede Hendra Suputra,
G.A. Vida Mastrika Giri........................................................................................ 67-75
PROSIDING SEMINAR NASIONAL SAINTECH 2016 ISSN: 2541-0636
iv | Bukit Jimbaran, Bali – 19 November 2016
BIDANG LINGKUNGAN DAN KESEHATAN
EFEK RADIASI GAS RADON DARI BANGUNAN BERBAHAN GYPSUM
BERPOTENSI MENIMBULKAN KANKER PARU-PARU
Gusti Agung Ayu Ratnawati, Ni Nyoman Ratini.................................................. 76-82
KADAR GLUKOSA DARAH ANAK TIKUS JANTAN SETELAH PEMBERIAN
SEDUHAN DAUN KELOR
Ida Bagus Made Suaskara, Martin Joni, Putu Ariwati .......................................... 83-87
ANALISIS ARSEN PADA MINYAK GORENG DENGAN
SPEKTROMETRI SERAPAN ATOM
A.A. Bawa Putra, I W. Suarsa, I P.P. Darmayuda, I P. Juan Dirga Atmaja
Suartama, Komang Swandiyasa, P.Ayu Erna Mahayani ...................................... 88-92
PEMBUATAN PROTOTYPE ALAT UKUR KEKERUHAN AIR BERBASIS
ARDUINO UNO DENGAN TAMPILAN LCD LMB16A
I Made Satriya Wibawa, I Ketut Putra, Bhaksti Hardian Yusuf,
Cici Izzah Afkarina ............................................................................................... 93-97
BIDANG ENERGI DAN MATERIAL
PEMISAHAN MINERAL KAOLIN DARI TANAH LEMPUNG LOKAL
BALI SECARA FRAKSINASI UKURAN PARTIKEL
I Made Sutha Negara, I Nengah Simpen.............................................................. 98-105
KARAKTERISTIK REFLEKTAN SPEKTRAL VEGETASI CENGKEH
MENGGUNAKAN LANDSAT 8 DI KABUPATEN BULELENG BALI
Yuliara, A. Kasmawan ......................................................................................... 106-112
PENGARUH SUBSTITUSI UNSUR Eu PADA PARAMETER KISI
SUPERKONDUKTOR Y3Ba5Cu8O18
I Gusti Agung Putra Adnyana, Putu Suardana, Wayan Gede Suharta .............. 113-118
PENGARUH PENAMBAHAN UNSUR Gd PADA UKURAN PARTIKEL
SUPERKONDUKTOR Bi-2212
Ida Bagus Alit Paramarta, I Gusti Agung Ayu Ratnawati,
Wayan Gede Suharta............................................................................................ 119-124
ANALISA UKURAN NANOPARTIKEL PERAK HASIL BIOSINTESIS
DENGAN RUMUS SCHERRER
Nyoman Wendri, Ni Nyoman Rupiasih, Made Sumadiyasa ............................. 125-129
ANALISIS KUALITATIF UNSUR-UNSUR YANG TERKANDUNG DALAM
BODY KERAMIK STONEWARE DENGAN LIBS
Erwin Jayadi, Hery Suyanto, Komang Nelly Sundari ....................................... 130-136
PROSIDING SEMINAR NASIONAL SAINTECH 2016 ISSN: 2541-0636
Bukit Jimbaran, Bali – 19 November 2016 | v
SIFAT FISIS DAN ANALISIS KUALITATIF GUGUS FUNGSI KERAMIK
(STONEWARE) BL-1 MENGGUNAKAN FTIR
I Gede Windrawan, Wayan Gede Suharta, Totok Nugroho .............................. 137-143
ANALISIS KARAKTERISTIK KERAMIK STONEWARE YANG
DISINTESIS DENGAN SUHU SINTERING 12000C
Ni K. Lisna D.S., P. Suardana, I.G.A. Suradharmika, M. Sumadiyasa ............ 144-149
PEMANTAUAN KUALITAS UDARA MELALUI UJI EMISI DI WILAYAH
KOTA DENPASAR
Ni Made Ayu Mega Trisnayani Putri, I Gusti Ayu Yuliastini,
Ni Nyoman Rupiasih............................................................................................ 150-156
BIDANG BIOMOLEKULER, BIOTEKNOLOGI, DAN BIOINFORMATIKA
KONSENTRASI RADIOISOTOP 32
P PADA DAUN TANAMAN SAWI HIJAU
(Brassica rapa var. parachinensis) DENGAN TEKNIK PERUNUT
Gusti Ngurah Sutapa, I B. Made Suryatika ......................................................... 157-164
PERUBAHAN PARAMETER KISI AKIBAT DOPING Eu PADA
KRISTAL STRONTIUM CUPRUM OXIDE
Putu Suardana, Komang Ngurah Suarbawa, Wayan Gede Suharta ...................... 165-170
BIDANG BIODIVERSITAS
JENIS-JENIS BURUNG YANG DITERMUKAN DI KAWASAN JATILUWIH,
TABANAN-BALI
Anak Agung Gde Raka Dalem, Job Nico Subagyo ............................................. 171-179
ANALISA GENOTYPE ABCB1 VARIAN C1236T PASIEN LLA
DI RSUP SANGLAH
Inna Narayani, Rasmaya Niruri, Ni Nengah Dwi Fatmawati .............................. 180-184
PROSIDING SEMINAR NASIONAL SAINTECH 2016, pp. 37-44 ISSN: 2541-0636
37
ANALISIS AVERAGE CASE RUNNING TIME ALGORITMA
QUICKSORT
Kadek Arya Saputra1§
, I Gusti Ngrh. Lanang Wijayakusuma2§
1 Jususan Matematika, Fakultas MIPA Universitas Udayana
Email: [email protected]
2 Jurusan Matematika, Fakultas MIPA Universitas Udayana
Email: [email protected]
§Penulis Korespondensi
ABSTRAK
Algoritma quicksort memiliki average case running time yang cenderung lebih dekat
dengan nilai best case running time-nya. Padahal algoritma-algoritma sorting yang
lain memiliki average case running time yang cenderung lebih dekat dengan worst
case running time nya. Paper ini akan memberikan analisis kenapa hal tersebut bisa
terjadi. Analisis pada paper ini dilakukan dengan melakukan studi literatur
kemudian melakukan simulasi dengan program sorting berbasis web. Hasil
penelitian pada paper ini menunjukkan bahwa untuk mencapai worst case, maka
pivot yang diperoleh pada setiap iterasi harus selalu elemen yang paling besar atau
paling kecil. Tentu hal ini sangat mustahil terjadi. Oleh karena itu average case
running time algoritma quicksort cenderung sama dengan nilai best case running
time-nya.
Kata kunci: : Algoritma, algoritma quicksort, average case running time, quicksort
1. PENDAHULUAN
Pengurutan atau sorting merupakan operasi dasar dalam berbagai jenis aplikasi komputer.
Secara umum sorting adalah proses untuk menata ulang data ke dalam urutan tertentu.
Kebanyakan program menggunakan sorting sebagai langkah awal atau intermediate step
untuk melakukan operasi komputer yang lain[3]
. Misalnya pada proses pencarian atau
searching, tentu akan lebih mudah mencari suatu nilai atau value pada data yang sudah
terurut.
Performa suatu algoritma sorting secara umum dapat dilihat dari analisis running time
pada kondisi terbaik (best case), kondisi rata-rata (average case), dan kondisi terburuk (worst
case). Proses analisis best case running time dilakukan dengan cara menghitung jumlah
eksekusi baris perintah pada algoritma dalam kondisi inputan terbaik. Sedangkan untuk
analisis worst case running time dilakukan dalam kondisi inputan paling buruk. Bagaimana
dengan poses analisis average case running time?
Kadek Arya Saputra, I G.N. Lanang Wijayakusuma Analisis Average Case Running Time Algoritma Quicksort
38
Cormen dalam bukunya mengatakan “The average case is often roughly as bad as the
worst case”[3]. Hal ini berarti kompleksitas waktu average case dari suatu algoritma sorting
biasanya sering dikatakan sama buruknya dengan kompleksitas waktu worst case nya.
Namun salah satu algoritma sorting yaitu quicksort memiliki best case Ω(𝑛 lg 𝑛), average
case 𝜃(𝑛 lg 𝑛), dan worst case 𝑂(𝑛 ). Terlihat bahwa kompleksitas waktu average case dari
quicksort tidak sama dengan kompleksitas waktu wosrt case-nya.
Berdasarkan ulasan diatas maka muncul sebuah pertanyaan, kenapa average case dari
quicksort cenderung sama dengan kondisi best case-nya? Padahal average case algoritma
sorting yang lain cenderung sama dengan worst case-nya. Paper ini akan menganalisis
kenapa average case running time dari quicksort tidak sama dengan worst case-nya.
Karunanithi dalam penelitiannya telah melakukan perbandingan terhadap beberapa
algoritma sorting. Algoritma yang dibandingkan dibagi menjadi dua kategori, yaitu
Comparison Based Sort dan Non-Comparison Based Sort [5]. Hasil awal pada penelitiannya
adalah mengategorikan algoritma-algoritma yang akan dibandingkan ke dalam 2 kategori
serta menyajikan performa dari masing-masing algoritma. Tabel 1 merupakan algoritma
sorting yang masuk dalam kategorti Comparison Based Sort. Sedangkan Tabel 2 merupakan
algoritma sorting kategorti Non-Comparison Based Sort.
Tabel 1. Algoritma Kategori Comparison Based Sort
Algoritma Sorting Best Case Average Case Worst Case
Bubble Sort 𝑛 𝜃 𝑛 𝑂 𝑛
Modified Bubble Sort 𝑛 𝜃 𝑛 𝑂 𝑛
Selection Sort 𝑛 𝑂 𝑛 𝑂 𝑛
Insertion Sort 𝑛 𝜃 𝑛 𝑂 𝑛
Merge Sort 𝑛 𝑛 𝜃 𝑛 𝑛 𝑂 𝑛 𝑛
Algoritma Sorting Best Case Average Case Worst Case
Quicksort 𝑛 𝑛 𝜃 𝑛 𝑛 𝑂 𝑛
Randomized Quicksort 𝑛 𝑛 𝜃 𝑛 𝑛 𝑂 𝑛 𝑛
Heapsort 𝑛 𝑛 𝜃 𝑛 𝑛 𝑂 𝑛 𝑛
PROSIDING SEMINAR NASIONAL SAINTECH 2016, pp. 37-44 ISSN: 2541-0636
39
Tabel 2. Algoritma Kategori Non-Comparison Based Sort
Algoritma Sorting Best Case Average Case Worst Case
Radix Sort 𝑛
𝜃 𝑛
𝑂 𝑛
Counting Sort 𝑛 𝜃 𝑛 𝑂 𝑛
Bucket Sort 𝑛 𝑂 𝑛 𝑂 𝑛
C.Canaan dalam jurnalnya memperkenakan beberapa algoritma sorting yang populer
saat ini [2]. C.Canaan juga menyajikan performa dari masing-masing algoritma tersebut.
Tabel 3 merupakan hasil dari penelitian yang dilakukan oleh C.Canaan.
Tabel 1. Algoritma Sorting Populer Saat Ini
Algoritma Sorting Best Case Average Case Worst Case
Bubble Sort 𝑛 𝜃 𝑛 𝑂 𝑛
Selection Sort 𝑛 𝑂 𝑛 𝑂 𝑛
Insertion Sort 𝑛 𝜃 𝑛 𝑂 𝑛
Merge Sort 𝑛 𝑛 𝜃 𝑛 𝑛 𝑂 𝑛 𝑛
Algoritma Sorting Best Case Average Case Worst Case
Heapsort 𝑛 𝑛 𝜃 𝑛 𝑛 𝑂 𝑛 𝑛
Quicksort 𝑛 𝑛 𝜃 𝑛 𝑛 𝑂 𝑛
Kata algoritma diambil dari nama ilmuwan muslim Abu Ja’far Muhamad bin Musa Al-
Khwarizmi (780-846 M) yang telah menghasilkan banyak karya dalam bidang matematika.
Algoritma adalah urutan langkah-langkah yang dinyatakan dengan jelas dan tidak rancu
untuk memecahkan suatu masalah dalam rentang waktu tertentu [6].
Algoritma merupakan langkah-langkah sistematis yang digunakan untuk memecahkan
suatu masalah. Menurut Bagio [1] dalam pemrograman komputer, algoritma mampu
menjelaskan bagaimana cara menjalankan fungsi yang dapat diekspresikan dengan suatu
program.
Cormen dalam bukunya yang berjudul Intruduction to Algorithms, mendefinisikan
algoritma sebagai prosedur komputasi yang mengambil suatu nilai sebagai input dan
menghasilkan suatu nilai sebagai output [3]. Suatu algoritma dikatakan benar jika untuk
sembarang inputan menghasilkan output yang benar. Jadi bisa disimpulkan bahwa algoritma
Kadek Arya Saputra, I G.N. Lanang Wijayakusuma Analisis Average Case Running Time Algoritma Quicksort
40
adalah langkah-langkah yang sistematis, executable, dan terminated untuk
mentransformasikan input menjadi sebuah output.
Analisis worst case mengantisipasi waktu terlama yang diperlukan suatu algoritma untuk
memecahkan masalah pada 𝑛 jumlah inputan. Analisis worst case memberikan batas atas atau
upper bound dari running time. Hal ini juga berarti bahwa algoritma tersebut tidak akan
berjalan lebih lambat dari upper bound atau batas atasnya.
Analisis best case mengantisipasi waktu tercepat yang diperlukan suatu algoritma dalam
memecahkan masalah pada 𝑛 jumlah inputan. Hasil dari analisis ini adalah lower bound atau
batas bawah running time suatu algoritma. Analisis best case ini menjamin bahwa sutau
algoritma tidak akan mampu menyelesaikan masalah lebih cepat dari batas bawahnya.
Analisis average case mengantisipasi waktu rata-rata yang diperlukan suatu algoritma
dalam memecahkan masalah pada 𝑛 jumlah inputan. Menurut Cormen, et al [3] biasanya
average case sering disamakan dengan kasus terburuknya atau worst case.
Banyak algoritma yang memiliki struktur rekursif. Untuk memecahkan suatu masalah
algoritma tersebut memanggil dirinya secara rekursif sampai menemukan bagian masalah
yang bisa diselesaiakan. Cormen, et al [3] menjelaskan, algoritma seperti ini memakai
paradigma devide and conquer. Jadi paradigma devide and conquer memecahkan masalah
dengan membagi masalah tersbut menjadi beberapa bagian masalah yang mirip dengan
masalah aslinya tapi dalam ukuran yang lebih kecil. Selesaikan sub masalah secara rekursif,
kemudian gabungkan solusi pada tiap sub masalah sehingga solusi untuk permasalahan utama
terselesaiakan.
Paradigma devide and conquer memiliki tigas proses yang utama, yaitu :
1. Devide : Bagi masalah menjadi beberapa sub masalah.
2. Conquer : Selesaikan sub masalah secara rekursif.
3. Combine : Gabungkan solusi pada tiap sub masalah sehingga menciptakan solusi
untuk permasalahan awal.
Quicksort adalah algoritma sorting dengan paradigma devide and conquer. Quick sort
memiliki worst case running time 𝑛 , dan average case 𝜃 𝑛 𝑛 (Cormen, et al., 2001).
Prinsip kerja quick sort pada array sebagai berikut:
a. Devide : Array disusun ulang menjadi dua subarray dan
dengan kondisi tiap elemen pada nilainya lebih kecil
atau sama dengan elemen pada . Sedangkan kondisi tiap elemen pada
nilainya lebih besar atau sama dengan . Kemudian hitung
indeks sebagai bagian dari proses partisi.
b. Conquer : Urutkan kedua subarray dengan cara memanggil kembali prosedur
quick sort (rekursif).
PROSIDING SEMINAR NASIONAL SAINTECH 2016, pp. 37-44 ISSN: 2541-0636
41
c. Combine : Ketika semua subarray sudah terurut maka array akan
otomatis terurut.
Algoritma dari quick sort adalah sebagai berikut :
𝑂 𝑂 𝑂
Kunci dari algoritma ini adalah proses partisinya, algoritma proses partisi array nya sebagai
berikut :
𝑛
𝑛 𝑛
2. METODE
Metode penelitian pada paper ini adalah studi literatur dan simulasi sorting dengan sebuah
program. Penelitian ini menggunakan aplikasi Web Browser Google Chroome untuk
menjalankan program simulasi yang dibuat dengan bahasa PHP. Penelitian ini dilakukan pada
komputer dengan spesifikasi: CPU: Intel Core i5 @2,30 GHz.; RAM: 4GB; OS: Windows 10
Home 64-Bit.
Data yang digunakan pada penelitian tugas akhir ini adalah data bertipe integer. Data ini
diperoleh dari proses random di komputer, dan volume datanya adalah 1000 data. Penelitian
ini dilakukan dengan studi literatur dan pengujian pengurutan data menggunakan simulasi
komputer. Langkah-langkah dalam penelitian ini adalah:
Kadek Arya Saputra, I G.N. Lanang Wijayakusuma Analisis Average Case Running Time Algoritma Quicksort
42
1. Memahami dan menganalisis prosedur algoritma quicksort.
Pada langkah ini penulis mempelajari serta menganalisis prosedur algoritma quick
sort dari berbagai 42omputer42e dan referensi. Penulis 42ompu menganalisis kondisi
terburuk (worst case) dari quicksort.
2. Membuat program simulasi sorting dengan algoritma quicksort.
Setelah memahami prosedur algoritma, langkah selanjutnya adalah memigrasi
algoritma kedalam kode pemrograman untuk membuat program simulasi pengurutan
pada 42omputer sesuai dengan algoritma quick sort.
3. Melakukan simulasi.
Setelah program selesai, maka penulis melakukan simulasi pengurutan data dengan
rincian sebagai berikut :
a. Membangkitkan himpunan data dengan volume 1000 data
b. Simulasi dilakukan sebanyak 100 kali.
c. Pada setiap simulasi, prosesnya adalah himpunan data diacak dahulu
kemudian diurutkan oleh algoritma quick sort.
d. Runing time pada simulasi diperoleh dengan cara mengurangkan waktu
setelah proses sorting dengan waktu sebelum proses sorting.
e. Data akan diatur menjadi dua jenis yaitu data untuk worst case dan data untuk
average case.
4. Mencatat hasil running time. Penulis mencata hasil running time (dalam sec.) pada
simulasi.
5. Melakukan analisis.
Setelah semua hasil running time terkumpul, maka langkah selanjutnya adalah
mencatat apakah ada hasil running time pada data average case yang masuk dalam
interval running time worst case.
6. Mengambil kesimpulan berdasarkan hasil yang diperlihatkan pada langkah 1 dan 5.
3. HASIL DAN PEMBAHASAN
Performa dari quicksort sangat tergantung pada proses partisinya. Semakin seimbang
partisi yang dihasilkan pada setiap iterasi maka proses sorting semakin cepat. Namun jika
partisi yang dihasilkan pada setiap iterasi tidak seimbang maka proses sorting nya menjadi
lambat.
Untuk mencapai kondisi worst case, maka partisi yang dihasilkan pada setiap iterasi
harus selalu dan 𝑛 , artinya partisi di sebelah kiri pivot memiliki elemen dan
sebelah kanan pivot memiliki 𝑛 elemen atau sebaliknya.
PROSIDING SEMINAR NASIONAL SAINTECH 2016, pp. 37-44 ISSN: 2541-0636
43
Untuk mencapai pembagian partisi dan 𝑛 maka pivot yang terpilih pada setiap
itrasi harus elemen yang paling besar atau yang paling kecil[4]
. Akibatnya akan terjadi
sebanyak 𝑛 perulangan dan mengakibatkan tinggi tree akan menjadi setinggi 𝑛.
Sehingga diperoleh kompleksitas waktunya adalah 𝑛 𝑛 𝑛 𝑛
𝑛
Analisi sederhana berikut akan menunjukkan bahwa peluang worst case dari quicksort
sangatlah kecil. Kondisi hampir worst case dari quicksort adalah menghasilkan partisi dengan
proporsi data pada partisi kiri dan data pada partisi kanan atau sebaliknya.
Kondisi partisi ini kita namakan partisi . Untuk 𝑛 , maka presentase kondisi ini
terjadi adalah .
Kondisi di atas diperoleh hanya dengan kondisi pivot, yaitu pivot merupakan elemen
terkecil kedua 𝑛 ), atau elemen terbesar kedua ( 𝑛 ).
Sehingga diperoleh presentasenya = ; 𝑛 . Semakin besar data yang
diurutkan maka peluang kondisi ini terjadi juga akan semakin kecil.
Hasil presentase di atas menunjukkan bahwa partisi yang dihasilkan adalah partisi
, dan 80% partisi yang dihasilkan lebih seimbang dari . Inilah yang
mengakibatkan average case dari quicksort tidak sama dengan dengan worst case-nya.
Hasil simulasi juga menunjukkan hal yang sama dengan analisis di atas. Dari 100 kali
simulasi yang dilakukan pada volume 1000 data, tidak satupun kondisi worst case yang
muncul pada data random. Tabel 4 menunjukkan tidak ada hasil running time dari data
random yang masuk dalam interval running time worst case.
Tabel 4. Tabel Hasil Simulasi
Simulasi Running Time pada Data Random Interval Running Time pada Data Worst Case
2
3
… …
99
100
4. KESIMPULAN DAN SARAN
Hasil analisis di atas baik secara literatur maupun simulasi menunjukkan bahwa
penyebab running time average case dari quicksort tidak ekuivalen dengan worst case-nya
adalah karena partisi yang terjadi pada running time quicksort selalu lebih seimbang dari
kondisi partisi . Presentase partisi 1 to 9 adalah . Hal ini berarti partisi
yang terjadi lebih seimbang dari partisi
Kadek Arya Saputra, I G.N. Lanang Wijayakusuma Analisis Average Case Running Time Algoritma Quicksort
44
Paper ini hanya meneliti penyebab running time average case dari quicksort yang tidak
ekuivalen dengan worst case-nya. Penelitian selanjutnya diharapkan mampu menjelaskan
running time average case quicksort yang ternyata lebih dekat ke kondisi best case-nya.
DAFTAR PUSTAKA
[1] Bagio, T. H., 2007. Algoritma dan Pemrograman. Surabaya: Universitas Narotama Press.
[2] Canaan, C., Garai, M. S. & Daya, M., 2011. Popular Sorting Algorithms. World Applied
Programming, I(1), pp. 62-71.
[3] Cormen, T. H., Leiserson, C. E., Rivest, R. L. & Stein, C., 2001. Introduction to Algorithms.
Cambridge, Massachusetts, London, England: The MIT Press.
[4] David G. Sullivan, P., 2012. Computer Science E-119 Harvard Extension School. [Online]
Available at: http://www.fas.harvard.edu/~cscie119/lectures/sorting.pdf
[Accessed 16 11 2016].
[5] Karunanithi, A. K., 2014. A Survey, Discussion and Comparison of Sorting Algorithms, s.l.:
Department of Computing Science Ume˚a University.
[6] Wahid, F., 2004. Dasar-dasar Algoritma dan Pemrograman. Yogyakarta: Andi.