• Tidak ada hasil yang ditemukan

Perbandingan Kompleksitas Waktu Teoretis dan Real Time Algoritma Strand Sort, Sieve Sort, Gnome Sort

N/A
N/A
Protected

Academic year: 2017

Membagikan "Perbandingan Kompleksitas Waktu Teoretis dan Real Time Algoritma Strand Sort, Sieve Sort, Gnome Sort"

Copied!
13
0
0

Teks penuh

(1)

PERBANDINGAN KOMPLEKSITAS WAKTU TEORETIS DAN

REAL TIME ALGORITMA STRAND SORT, SIEVE SORT,

GNOME SORT

SKRIPSI

RUTH STEPHANY SIAHAAN

141421092

PROGRAM STUDI EKSTENSI S1 ILMU KOMPUTER

FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI

UNIVERSITAS SUMATERA UTARA

(2)

PERBANDINGAN KOMPLEKSITAS WAKTU TEORETIS DAN

REAL TIME ALGORITMA STRAND SORT, SIEVE SORT,

GNOME SORT

SKRIPSI

Diajukan untuk melengkapi tugas dan memenuhi syarat memperoleh ijazah Sarjana Ilmu Komputer

RUTH STEPHANY SIAHAAN 141421092

PROGRAM STUDI EKSTENSI S1 ILMU KOMPUTER

FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA

(3)

PERSETUJUAN

Judul : PERBANDINGAN KOMPLEKSITAS WAKTU

TEORETIS DAN REAL TIME ALGORITMA STRAND SORT, SIEVE SORT, GNOME SORT

Kategori : SKRIPSI

Nama : RUTH STEPHANY SIAHAAN

Nomor Induk Mahasiswa : 141421092

Program Studi : EKSTENSI SARJANA (S1) ILMU KOMPUTER

Departemen : ILMU KOMPUTER

Fakultas : FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI

INFORMASI UNIVERSITAS SUMATERA UTARA Diluluskan di

Medan, 2017

Komisi Pembimbing :

Pembimbing 2 Pembimbing 1

Jos Timanta Tarigan,S.Kom,M.Sc Dian Rachmawati, S.Si, M.Kom NIP. 198501262015041001 NIP. 198307232009122004

Diketahui/disetujui oleh

Program Studi S1 Ilmu Komputer Ketua,

(4)

PERNYATAAN

PERBANDINGAN KOMPLEKSITAS WAKTU TEORETIS DAN

REAL TIME ALGORITMA STRAND SORT, SIEVE SORT,

GNOME SORT

SKRIPSI

Saya mengakui bahwa skripsi ini adalah hasil karya saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing telah disebutkan sumbernya.

Medan, Februari 2017

(5)

PENGHARGAAN

Segala dan puji syukur penulis panjatkan hanya kepadaTuhan Yesus Kristus oleh

karena kasih-Nya, penulis mampu menyelesaikan Skripsi ini.Dalam pengerjaan

Skripsi ini penulis banyak sekali mendapatkan dukungan, masukan, dan nasehat

dari berbagai pihak.

Banyak bantuan berupa motivasi,bimbingan, meluangkan waktu dan pikirannya

serta memberikan ilmunya kepada penulis dalam menyelesaikan Skripsi ini.

Teristimewa untuk kedua orangtua tercinta Ayahanda Donald Siahaan dan Ibunda

Nany Hutabarat atas doa, dukungan, dan kasih sayang yang telah diberikan kepada

penulis selama ini.Oleh karena itu, penulis ingin menyampaikan ucapan terima

kasih kepada pihak-pihak yang telah membantu. Ucapan terima kasih penulis

sampaikan kepada:

1. Bapak Prof. Dr. Runtung Sitepu, SH., M.Hum. selaku Rektor Universitas

Sumatera Utara.

2. Bapak Prof. Dr. Opim Salim Sitompul, M.Sc selaku Dekan Fasilkom-TI USU.

3. Bapak Dr. Poltak Sihombing, M.Kom. selaku Ketua Program Studi S1 Ilmu

Komputer Universitas Sumatera Utara yang telah memberikan bimbingan dan

dukungan kepada penulis..

4. Ibu Maya Silvi Lydia, B.Sc., M.Sc. selaku Sekretaris Program Studi S1 Ilmu

Komputer Universitas Sumatera Utara yang telah memberikan bimbingan dan

dukungan kepada penulis.

5. Ibu Dian Rachmawati S.Si, M.Kom. selaku Dosen Pembimbing I yang telah

memberikan bimbingan dan dukungan kepada penulis.

6. Bapak Jos Timanta Tarigan, S.Kom, M.Sc. selaku Dosen Pembimbing II yang

telah memberikan bimbingan dan dukungan kepada penulis.

7. Bapak Mohammad Andri Budiman S.T., M.Comp.Sc., M.E.M selaku Dosen

Pembimbing,Penyemangat dan Penasihat yang telah memberikan bimbingan

dan dukungan kepada penulis.

8. Seluruh tenaga pengajar dan pegawai di Fakultas Ilmu Komputer dan

Teknologi Informasi USU, terkhususnya di Program Studi S1 Ilmu Komputer.

9. Kakak saya Lydia Novita Siahaan, S.E dan Esther Siahaan, S,Si yang telah

(6)

10. Sahabat-sahabat Pejuang Wisuda yang saling berbagi ilmu pengetahuan,

pemikiran, motivasi, dan dukungan kepada penulis khususnya Firma Fanny

Sinaga, Junita Situmorang, Lia Ritonga, Mariaty, Sayed Hafiz, Benyamin

Ginting, Januar Andi Sirait, Josua Pribadi Sianipar, dan Adam Kevin.

11. Teman-teman kuliah Ekstensi Ilmu Komputer stambuk 2014, khususnya Kom

B, yang telah berbagi motivasi, rasa kebersamaan, dan inspirasi kepada

penulis.

12. Semua pihak yang terlibat langsung atau tidak langsung yang penulis tidak

dapat tuliskan satu per satu.

Semoga semua kebaikan, bantuan, perhatian, serta dukungan yang telah diberikan

kepada penulis mendapatkan pahala yang melimpah dari Tuhan YME.

Medan, Februari 2017

(7)

ABSTRAK

Pengurutan merupakan proses mengatur susunan data secara teratur dengan pola

tertentu untuk memudahkan dalam proses pencarian data. Dengan adanya algoritma

pengurutan, data yang awalnya acak akan menjadi terurut sesuai aturan. Ada

banyak algoritma untuk pengurutan data, namun pada tugas akhir ini akan dibahas

algoritma Strand Sort, Sieve Sort, dan Gnome Sort. Algoritma Strand Sort adalah

algoritma pengurutan yang mencari elemen yang tepat untuk diletakkan di posisi

yang telah diketahui setelah data ditemukan. Algoritma Sieve Sort adalah algoritma

pengurutan seperti sebuah proses penyaringan dan setelah data disaring akan ditata

kembali sesuai jumlah data yang ada. Algoritma Gnome Sort adalah algoritma

pengurutan seperti sebuah proses penyisipan dengan serangkaian pertukaran (swap)

dengan implementasi menggunakan bahasa pemograman C#. analisis kinerja

algoritma ini bertujuan untuk mengetahui kompleksitas waktu dan running time

dari ketiga algoritma tersebut. Kompleksitas waktu dapat dihitung melalui tahapan

pengurutan berdasarkan langkah-langkah algoritma tersebut dalam memecahkan

masalah dan Running Time yang dihitung berdasarkan platform yang digunakan.

Dalam percobaan yang dilakukan didapatkan bahwa algoritma Strand Sort dan

Gnome Sort lebih efisien dari algoritma Sieve Sort dengan kompleksitas waktu (Tn)

Strand Sort dan Gnome Sort n2 sedangkan algoritma Sieve Sort n3.

Kata Kunci : Pengurutan, Strand Sort, Sieve Sort, Gnome Sort, Kompleksitas

(8)

ABSTRACT

Sorting is the process of organizing the data regularly with a certain pattern to

facilitate the search process data. By this sorting algorithm, the data that served

randomly can be arranged by regular. Sorting algorithm use in this research are

Strand Sort, Sieve Sort, and Gnome Sort. Strand Sort algorithm is data sorting

algorithm of seeking elements proper to put in position that have been known after

data found. Sieve Sort algorithm is data sorting algorithm a process of screening

and after the filtered data will be reorganized according to the number of existing

data. Gnome Sort algorithm is data sorting algorithm an insertion process with a

series of exchange (swap). Programming language implementation use C#. Sorting

of data takes times so it take the time complexity analysis. The time complexity can

be calculated by the stages of sorting based on the step of the algorithm in solving

problems and running time based on the platform being used. In experiments

conducted found that the algorithm Strand Sort and Gnome Sort more efficient than

the algorithm complexity Sieve Sort by time (Tn) is Strand Sort and Gnome Sort n2

while Sieve algorithm is n3.

Keywords : Sorting, Strand Sort, Sieve Sort, Gnome Sort, Time Complexity and

(9)

DAFTAR ISI

Halaman

Persetujuan ii

Pernyataan iii

Penghargaan iv

Abstrak vi

Abstract vii

Daftar Isi viii

Daftar Tabel x

Daftar Gambar xi

Daftar Lampiran xii

Bab 1 Pendahuluan

..1.1. Latar Belakang 1

..1.2. Rumusan Masalah 2

..1.3. Batasan Masalah 2

..1.4. Tujuan Penelitian 3

..1.5. Manfaat Penelitian 3

..1.6. Metodologi Penelitian 3

..1.7. Sistematika Penelitian 4

Bab 2 Landasan Teori

2.1. Pengertian Algoritma 5

..2.2. Algoritma Pengurutan (Sorting) 6

. 2.3. Klasifikasi Algoritma Pengurutan 7

2.4. Algoritma Strand Sort 8

2.4.1 Pseudocode Algoritma Strand Sort 10

2.5. Algoritma Sieve Sort 11

2.5.1 Pseudocode Algoritma Sieve Sort 13

2.6. Algoritma Gnome Sort 14

2.6.1 Pseudocode Algoritma Gnome Sort 16

2.7. Kompleksitas Algoritma 17

2.7.1 Kompleksitas Waktu 17

Bab 3 Analisis dan Perancangan Sistem

3.1. Analisis Masalah 24

3.2. Analisis Kebutuhan Sitem 25

3.2.1. Kebutuhan fungsional 25

(10)

3.3. Pemodelan Sistem 26

3.3.1. Use Case Diagra m 26

3.3.2. Activity Diagram 27

3.3.3. Sequence Diagram 28

3.4. Flowchart Sistem 29

3.4.1. Flowchart Algoritma Strand Sort 30

3.4.2. Flowchart Algoritma Sieve Sort 31

3.4.3. Flowchart Algoritma Gnome Sort 32

3.5. Rancangan User 33

3.5.1. Rancangan Halaman Home 33

3.5.2. Rancangan Halaman Pengurutan Data String 34

3.4.3. Rancangan Halaman About 36

3.5. Tabel ASCII 37

Bab 4 Implementasi dan Pengujian Sistem

4.1. Implementasi Sistem 38

4.2. Generated Data 38

4.3. Algoritma Strand Sort 39

. 4.3.1. Analisis Algoritma Strand Sort 41

.4.3.2. Analisis Kompleksitas Waktu (Tn) Algoritma Strand Sort 43

4.4. Algoritma Sieve Sort 45

. 4.4.1. Analisis Algoritma Sieve Sort 47

.4.4.2. Analisis Kompleksitas Waktu (Tn) Algoritma Sieve Sort 50

4.5. Algoritma Gnome Sort 53

. 4.5.1. Analisis Algoritma Gnome Sort 55

.4.5.2. Analisis Kompleksitas Waktu (Tn) Algoritma Gnome Sort 59 4.6. Kesimpulan Analisis Keseluruhan Algoritma 62

Bab 5 Penutup

5.1. Kesimpulan 66

5.2. Saran 67

(11)

DAFTAR TABEL

Nomor

Tabel Nama Tabel Halaman

2.1

Pengelompokkan Algoritma Berdasarkan Notasi O-Besar Perbedaan Array dan List

Tabel ASCII

Kompleksitas Waktu (Tn) Algoritma Strand Sort Running Time Algoritma Strand Sort

Kompleksitas Waktu (Tn) Algoritma Sieve Sort Running Time Algoritma Sieve Sort

Kompleksitas Waktu (Tn) Algoritma Gnome Sort Running Time Algoritma Gnome Sort

(12)

DAFTAR GAMBAR

Nomor

Gambar Nama Gambar Halaman

2.1

Proses Pengurutan Data Menggunakan Strand Sort Proses Pengurutan Data Menggunakan Sieve Sort Proses Pengurutan Data Menggunakan Gnome Sort Grafik Fungsi Big-Oh

Grafik Fungsi Big-Omega Grafik Fungsi Big-Theta Diagram Ishikawa

Use Case Diagram Sistem Activity Diagram

Sequence Diagram Flowchart Sistem Flowchart Strand Sort Flowchart Sieve Sort Flowchart Gnome Sort Rancangan Halaman Home

Rancangan Halaman Pengurutan Data String Rancangan Halaman About

Tampilan Hasil Generated Data

Tampilan Pengurutan String Dengan Algoritma Strand Sort Hasil Pengurutan String Dengan Algoritma Strand Sort Hasil Pengurutan 10 String Dengan Algoritma Strand Sort Grafik Algoritma Strand Sort

Tampilan Pengurutan String Dengan Algoritma Sieve Sort Hasil Pengurutan String Dengan Algoritma Sieve Sort Hasil Pengurutan 10 String Dengan Algoritma Sieve Sort Grafik Algoritma Sieve Sort

Tampilan Pengurutan String Dengan Algoritma Gnome Sort Hasil Pengurutan String Dengan Algoritma Gnome Sort Hasil Pengurutan 10 String Dengan Algoritma Gnome Sort Grafik Algoritma Gnome Sort

Grafik Running Time Seluruh Algoritma Pada Intel Core I3, RAM 2GB, HDD 500GB (Untuk Percobaan 10 – 100 Data String)

Grafik Running Time Seluruh Algoritma Pada Intel Core I3, RAM 2GB, HDD 500GB (Untuk Percobaan 100 – 1000 Data String)

Hasil Pengurutan Dari Ketiga Algoritma

(13)

DAFTAR LAMPIRAN

Halaman

Lampiran 1 Listing Program A-1

Gambar

Grafik Fungsi Proses Pengurutan Data Menggunakan Grafik Fungsi Big-Oh Big-Omega

Referensi

Dokumen terkait

secara langsung dibiayai oleh dana KIP Padang maupun dana dari m b e r lain yang relevan auu bekerja sarna d w instansi terkait Oleh lcarena itu, perringkatan

Studi ini dimaksudkan dengan menjawab permasalahan: ( 1) Adakah pengaruh antara kreatifitas guru terhadap hasil belajar aksara Jawa kelas IV MI Tarbiyatul Aulad Jombor

1) Di awal guru menyampaikan kompetensi dan garis-garis besar materi pembelajaran. 2) Membagi kelompok-kelompok kecil yang terdiri dari 4-6 orang siswa. 3) Pada pembelajaran guru

Jika regresi dilakukan hanya pada sampel perusahaan dimana antara loans book value dan loans fair value mempunyai perbedaan nilai, hasil regresi ini menunjukkan bahwa

Berdasarkan uraian diatas, diperlukan penelitian lebih lanjut tentang potensi penggunaan katalis heterogen K2O hasil kalsinasi dari limbah kulit buah kakao dengan mengkaji

Samson Rahman (Jakarta: Akbar Media Eka Sarana, 2003), 101-135; Muhammad al- Ghazali, Sejarah Perjalanan Hidup Muhammad, terj.. Yahudi Khaibar direlokasi ke luar Jazirah Arab,

Penelitian ini menguji pengaruh Dividend Payout Ratio (DPR), Return on Equity (ROE), Growth, dan Degree of Financial Leverage (DFL) pada Price to Book Value (PBV) pada

Hasil penelitian menunjukkan bahwa pengembang berperan aktif dalam mengimplementasikan rekomendasi penanganan dampak lalu lintas, utamanya penanganan dampak lalu lintas