Struktur Data Implementasi dan Analisis Algoritma Bucket Sort, Strand Sort dan Quick Sort 2 Pivot Dalam Pensortiran Data yang Berjumlah Banyak

16  Urutkan semua bagian kirikanan elemen dari data tersebut.  Selanjutnya akan menghasilkan data yang sudah terurut Kelebihan: Algoritma Quicksort memiliki kompleksitas On log n dimana pada prakteknya lebih cepat dari algoritma pengurutan lainnya. Kekurangan: Pada kemungkinan terburuknya, algoritma Quicksort ini dapat memiliki kompleksitas On2. Meskipun ini sangat langka terjadi

2.8.1 Pseudocode Quick Sort 2 Pivot

Algoritma Quick Sort 2 Pivot A,lo,hi is If lo hi then P:= partition A,lo,hi Quicksort A,lo,P-1 Quicksort A,P+1,hi Algoritma partition A,lo,hi is Pivot:= A[hi] i:= lo place for swapping for j:= lo to hi-1 do if A[j] = pivot then swap A[i] with A[j] i:= i+1 swap A[i] with A[hi] return i

2.9 Struktur Data

Struktur data adalah cara menyimpan atau merepresentasikan data di dalam komputer agar bisa dipakai secara efisien. Sedangkan data adalah representasi dari fakta dunia nyata. Fakta atau keterangan tentang kenyataan yang disimpan, direkam atau Universitas Sumatera Utara 17 direpresentasikan dalam bentuk tulisan, suara, gambar, sinyal atau simbol. Secara garis besar tipe data dapat dikategorikan menjadi : 1. Tipe data sederhanadasar a. Tipe data sederhana tunggal  Integer  Real  Boolean, dan  Karakter b. Tipe data sederhana majemuk misalnya string 2. Struktur data, meliputi : a. Struktur data sederhana  Array  Record b. Struktur data majemuk, yang terdiri dari:  Linier : Stack, Queue, List dan Multilist  No Linier : Pohon Biner tree dan Graph Pemakaian struktur data yang tepat didalam proses pemrograman akan menghasilkan algoritma yang lebih jelas dan tepat, sehingga menjadikan program secara keseluruhan lebih efesien dan sederhana. Struktur data yang ′′standar′′ yang biasanya digunakan dibidang informatika adalah List, Multilist, Stack Tumpukan, Queue Antrian, Tree Pohon , Graph Graf . Struktur data yang penulisan bahas dalam tesis ini adalah struktur data sederhana yaitu array dan struktur data majemuk yaitu list Wahyudi 2004 . a. Array Array larik adalah struktur data statik yang menyimpan sekumpulan elemen yang bertipe sama. Setiap elemen diakses langsung melalui indeksnya. Indeks Array larik harus tipe data yang menyatakan keterurutan misalnya integer atau karakter. Banyaknya elemen larik harus sudah diketahui sebelum program dieksekusi. Array merupakan suatu struktur data yang bersifat statis. Array harus dialokasikan terlebih dahulu di dalam memory sebelum kita memakainya. Universitas Sumatera Utara 18 b. List Merupakan suatu struktur data pengembangan dari konsep ADT Abstrak Data Type yang bersifat dinamis. List dapat dimanfaatkan secara effektif sesuai dengan keperluan. List juga dapat benar – benar dihapus dibersihkan dari memory. List sebenarnya merupakan suatu type data tersendiri. Di bahasa Visual Studio 2010 Ultimate, List bisa berupa suatu Class ataupun Record. Ciri – ciri utama dari List adalah, dia mempunyai minimal dua elemen utama. Elemen – elemen itu adalah data dan pointer untuk menunjukkan ke list berikutnya Sanjaya 2001. Tabel 1.2 Perbedaan mendetail antara Array dan List Array List 1. Pengaksesan bersifat Statis 2. volumenya selalu tetap tidak tergantung pada jumlah data 3. alokasi memori dilakukan pada saat array didefinisikan. 4. pembebasan memori dilakukan pada saat program berhenti. 5. Cara akses bersifat random dengan menggunakan nomor index. 1. Pengaksesan bersifat Dinamis 2. ukurannya berubah-ubah disesuaikan dengan kebutuhan. 3. alokasi memori ditentukan pada saat data baru dibuat. 4. pembebasan memori dilakukan setiap ada penghapusan data. 5. Cara akses ke masing-masing class data dilakukan secara linier selalu dimulai dari elemen pertama.

2.10 Penelitian Terdahulu