Abstract—The kite competition in Bali followed by hundreds to Setiap tahun ada ratusan bahkan ribuan peserta yang
thousands of participants every year. A lot of enthusiasts make the berkompetisi. Banyaknya peminat membuat panitia harus
organizers should be better in arranging registration number and bekerja semakin keras untuk mengatur nomor pendaftaran dan
validate the payment deadlines. The implementation of linked list validasi waktu pembayaran. Bahkan beberapa peserta rela
algorithm aims to assist organizers in terms of registration process menunggu sejak dini hari untuk berebut mendapatkan nomor,
automation, including kites numbering and payment deadlines memilih hari lomba, dan waktu penerbangan laying-layang
validation. The organizer doesn't need to record and arrange yang mereka inginkan.
hundreds to thousands of kite number. The automated numbering
process looks similar to a queue process of first in first out (FIFO) Berdasarkan permasalahan tersebut, perlu dikembangkan
algorithm. However, FIFO has some limitations and then decided sebuah perangkat lunak online untuk otomatisasi proses
to enhance with linked list algorithm. Linked list was used because pendaftaran, pembagian nomor layangan, dan pengecekkan
FIFO does not have the ability to search nodes, add nodes, and terhadap validitas waktu pembayaran. Sehingga nantinya bagi
delete nodes. peserta yang sudah mendaftar namun belum menyelesaikan
pembayaran sesuai waktu yang ditetapkan, maka nomor
Keywords—Kite competition, Automation system, Registration layangannya dapat diambil oleh peserta baru berikutnya secara
information system, Linked List, Algorithm
otomatis dan statusnya dinyatakan “hangus”, sehingga panitia
penyelenggara tidak lagi perlu mencatat dan menyusun nomor
I. PENDAHULUAN layang-layang peserta yang jumlahnya ratusan hingga ribuan
Bali merupakan salah satu pulau di Indonesia yang terkenal itu. Keterbatasan tempat juga dapat diatasi karena peserta tidak
dengan tradisi dan budayanya. Salah satu tradisi yang masih akan datang secara membeludak karena proses pendaftaran
dilestarikan sampai saat ini adalah tradisi bermain layang- diakukan secara online. Secara garis besar proses pemberian
layang. Layang-layang merupakan tradisi leluhur yang masih nomor secara otomatis ini merupakan implementasi dari proses
dilestarikan sampai saat ini. Hal tersebut tidak terlepas dari antrian menggunakan algoritma first in first out (FIFO) dan
kepercayaan bahwa menerbangkan layang-layang sebagai salah kemudian disempurnakan dengan algoritma linked list.
satu bentuk persembahan terhadap Sang Hyang Rare Angon Algoritma linked list digunakan karena algoritma FIFO tidak
yang merupakan manifestasi dari Dewa Siwa sebagai memiliki kemampuan untuk melakukan pencarian node
pelindung sawah petani dari serangan hama. Menerbangkan (simpul), menambahkan simpul (insertion), dan menghapus
layang-layang juga memiliki filosofi sebagai ungkapan simpul (deletion).
kebahagiaan dan rasa syukur kepada Dewa Siwa petani atas
keberhasilan panen mereka [1]. II. KAJIAN TEORI
Perlombaan layang-layang di Bali digagas oleh budayawan
A. Struktur Data
yang juga mantan Gubernur Bali Prof. Dr. Ida Bagus Mantra,
pada tahun 1978. Perlombaan diikuti oleh berbagai kalangan Struktur data adalah representasi data dan operasi yang
masyarakat baik dari Bali maupun luar daerah. Jenis layang- terkait. Bahkan bilangan bulat maupun floating point yang
layang yang dilombakan adalah layang-layang tradisional Bali, tersimpan di komputer dapat disebut sebagai struktur data yang
antara lain layangan jenis Bebean, Pecukan, dan Janggan [1]. sederhana. Lebih khusus lagi, struktur data dimaksudkan untuk
Perlombaan layang-layang di Bali terus berkembang, hal mengorganisasi dan menata kumpulan item data. Sebuah array
tersebut terlihat dari banyaknya penyelenggaraan lomba tiap yang berisi urutan bilangan bulat adalah contoh sederhana
tahun, salah satunya oleh Sekaa Teruna Dhananjaya, Banjar mengorganisasi dan menata data [2].
Danginpeken, Desa Intaran, Sanur (Lomba Layang-layang Menggunakan struktur data yang tepat dapat menentukan
Piala Dhananjaya). apakah sebuah perangkat lunak nantinya dapat berjalan dengan
baik, tepat, dan cepat atau sebaliknya. Pengembang perangkat kategori lomba “Janggan” ukuran “Medium”. Masing-masing
lunak menganalisis masalah terlebih dahulu untuk menentukan hari perlombaan terdapat beberapa kategori lomba, ukuran, dan
sasaran kinerja yang harus dicapai dan memilih struktur data kuota peserta seperti yang ditunjukkan pada tabel I.
yang tepat untuk digunakan dalam memecahkan permasalahan.
Pengembang perangkat lunak yang buruk biasanya TABEL I. DATA PAKET LOMBA
mengabaikan langkah analisis untuk memilih struktur data
yang tepat tetapi hanya menerapkan struktur data yang mereka Tanggal
Kategori Lomba Ukuran
Kuota
ketahui walaupun tidak sesuai dengan permasalahan yang Lomba Peserta
Janggan Medium 40
dihadapi. Perangkat lunak yang dihasilkanpun akhirnya
Janggan Besar 15
memiliki performa yang lambat atau tidak maksimal [2]. Janggan Buntut / Kuwir Satu Ukuran 40
Kreasi Bedeg / 2D Bebas 15
Sabtu
B. Linked List (July 22, 2017)
Kreasi 3D Bebas 15
Pecukan Satu Ukuran 100
Linked list adalah kumpulan dari beberapa objek yang
Bebean Medium 260
disebut node. Setiap node terhubung ke simpul penerus dalam Bebean Besar 165
list menggunakan link [3]. Linked list terdiri dari urutan link Bebean Khas Sanur Satu Ukuran 50
yang berisi item dan setiap link memiliki koneksi ke link lain. Janggan Medium 70
Linked list adalah struktur data kedua yang paling banyak Janggan Besar 20
digunakan setelah array. Linked list dapat divisualisasikan Janggan Merak Satu Ukuran 20
sebagai rangkaian node, dimana setiap node menunjuk ke node Janggan Buntut / Kuwir Satu Ukuran 30
berikutnya [4]. Kreasi Bedeg / 2D Bebas 20
Minggu
Kreasi 3D Bebas 20
(July 23, 2017)
Pecukan Satu Ukuran 150
Bebean Medium 200
Bebean Besar 200
Bebean Khas Sanur Satu Ukuran 20
Perakitan Layangan Janggan Satu Ukuran 10
Gambar 1. Visualisasi Linked List
Linked list berisi elemen link simpul pertama yang disebut Data sampel yang dijadikan pemodelan menggunakan
first. Setiap link memiliki data field dan link field yang disebut algoritma linked list berjumlah lima belas baris data. Data
next. Setiap link dihubungkan dengan link berikutnya tersebut diambil secara berurutan sesuai dengan waktu
menggunakan next link. Link terakhir memiliki link yang pendaftaran, seperti yang ditunjukkan pada tabel II. Pemodelan
bernilai null untuk menandai akhir dari list (last). Linked list meliputi proses insertion operation dan deletion operation.
dapat diisi dengan berbagai tipe data seperti string, characters,
atau integer. Selain itu bisa juga diisni dengan data unik TABEL II. DATA SAMPLE
maupun data duplikasi yang ditampilkan secara berurutan
ID Nomor Tanggal Tanggal
(sorted elements) atau yang tidak berurutan (unsorted Pendaftaran Layangan Daftar Kedaluwarsa
Status
elements). Linked list mendukung beberapa operasi dasar PDT-0007 1 Juni 18, 2017 Juni 20, 2017 Lunas
diantaranya adalah sebagai berikut. PDT-0040 3 Juni 18, 2017 Juni 20, 2017 Hangus
PDT-0101 5 Juni 18, 2017 Juni 20, 2017 Lunas
Insertion operation adalah proses menambahkan simpul PDT-0102 7 Juni 18, 2017 Juni 20, 2017 Lunas
baru ke dalam linked list terdiri dari beberapa langkah, PDT-0139 9 Juni 19, 2017 Juni 21, 2017 Hangus
yaitu membuat sebuah simpul dengan menggunakan PDT-0146 11 Juni 19, 2017 Juni 21, 2017 Lunas
struktur yang sama dan mencari lokasi di mana simpul PDT-0151 13 Juni 19, 2017 Juni 21, 2017 Hangus
tersebut harus ditambahkan. PDT-0153 15 Juni 19, 2017 Juni 21, 2017 Hangus
PDT-0183 17 Juni 19, 2017 Juni 21, 2017 Lunas
Deletion operation adalah proses penghapusan sebuah PDT-0306 3 Juni 23, 2017 Juni 25, 2017 Hangus
simpul. Menghapus sebuah simpul harus melalui PDT-0311 9 Juni 23, 2017 Juni 25, 2017 Lunas
beberapa tahapan, yaitu tahap pencarian (search) dan PDT-0318 13 Juni 24, 2017 Juni 26, 2017 Lunas
tahap penghapusan (deletion). Tahap pencarian node PDT-0391 3 Juni 26, 2017 Juni 28, 2017 Hangus
PDT-0392 15 Juni 26, 2017 Juni 28, 2017 Hangus
target yang akan dihapus dicari menggunakan algoritma
PDT-0393 19 Juni 26, 2017 Juni 28, 2017 Hangus
pencarian.
Reverse operation adalah sebuah proses yang dijalankan Berdasarkan aturan perlombaan, penomoran dibagi menjadi
pada seluruh simpul dengan tujuan untuk mengurutkan dua. Perlombaan Sabtu akan mendapatkan nomor ganjil,
list secara terbalik (membalik keseluruhan linked list). sedangkan Minggu mendapatkan nomor genap. Batas akhir
pembayaran (kedaluwarsa) dibatasi sampai dengan dua hari
III. METODOLOGI PENELITIAN setelah peserta melakukan pendaftaran. Status pendaftaran
Pemodelan algoritma linked list dalam penelitian ini “Belum Lunas” berarti peserta belum menyelesaikan proses
menggunakan data pendaftaran lomba layang-layang Piala pembayaran dan belum melewati tanggal kedaluwarsa,
Dhananjaya tahun 2017, pada hari lomba Sabtu, 22 Juli 2017 “Lunas” berarti peserta telah menyelesaikan pembayaran, dan
“Hangus” berarti peserta belum menyelesaikan proses berurutan. Seharusnya simpul “11” terkoneksi ke simpul “13”,
pembayaran dan telah melewati tanggal kedaluwarsa. maka yang dilakukan adalah menambahkan simpul baru, yaitu
simpul “13.new” yang berlokasi tepat setelah simpul “11”
Proses pemodelan akan dilakukan bertahap agar dapat seperti yang ditunjukkan pada gambar 3.
terlihat proses linked list yang terbentuk tiap harinya. Data
pendaftaran hari pertama, tanggal 18 Juni 2017 dapat dilihat
pada tabel III.
A. Insertion Operation
Proses insertion operation dilakukan pada proses
pemberian nomor layangan secara otomatis, yaitu apabila
terdapat pendaftar baru. Proses insertion operation
digambarkan pada pendaftaran tanggal 24 Juni 2017. Jumlah
peserta yang terdaftar yaitu dua belas peserta, dimana terdapat
satu peserta yang baru mendaftar seperti pada tabel IV.
Sebelum menambahkan pendaftaran ke dalam linked list,
terlebih dahulu dilakukan proses pencarian untuk menentukan
simpul baru dan untuk menghapus simpul yang memiliki status
“Hangus” (kedaluwarsa).
Gambar 4. Proses Memindahkan Link Simpul “11.next” ke Simpul “13.new”
TABEL IV. PENDAFTARAN TANGGAL 24 JUNI 2017 dan Simpul “13.new.next” ke Simpul “17”
Gambar 6. Proses Menghapus Link “3.next” ke Simpul “5” Pada halaman traknsaksi pendaftaran ditampilkan rincian
peserta yang terdaftar, termasuk status pembayarannya apakah
Setelah menghapus koneksi link “3.next” ke simpul “5”, sudah lunas, belum lunas, atau hangus. Tampilan halaman
lanjutkan proses dengan menghubungkan simpul “1” dengan transaksi aplikasi pendaftaran lomba layang-layang Piala
simpul “5” dengan cara memindahkan link simpul “1.next” ke Dhananjaya dapat dilihat pada gambar 9.
simpul “5” seperti yang terlihat pada gambar 7.
REFERENSI
[1] I. P. A. Widiyantara, P. N. Crisnapati, I. M. G. Sunarya, and I. G.
M. Darmawiguna, “PENGEMBANGAN FILM ANIMASI 3
DIMENSI ― Tude The Movie – Petualangan Si Rina ( Festival
Layang- Layang )‖,” vol. 4, pp. 120–128, 2015.
[2] C. A. Shaffer, A Practical Introduction to Data Structures and
Algorithm Analysis Third Edition (Java Version). Prentice Hall,
2009.
[3] M. McMillan, Data Structures and Algorithms with JavaScript.
California: O’Reilly Media, Inc, 2014.
Gambar 9. Halaman Transaksi Pendaftaran [4] “Tutorials Point, Data Structure and Algorithms - Linked List,”
2016. [Online]. Available:
https://www.tutorialspoint.com/data_structures_algorithms/linked_li
V. KESIMPULAN st_algorithms.htm. [Accessed: 20-Feb-2018].
Dalam penelitian ini, data yang digunakan sebagai [5] L. Del Barnett, Granville;Tongo, Data Structures and Algorithms -
pemodelan diperoleh dari data terdahulu, yaitu data lomba Annotated Reference with Examples First Edition. DotNetSlackers,
2008.
layang-layang Piala Dhananjaya tahun 2017. Algoritma linked
list digunakan untuk membuat pemodelan dalam otomatisasi