Materi Ajar Informatika Kelas 9
Selamat datang di dunia pengorganisasian data! Sama seperti kamu menata buku di rak agar mudah ditemukan, komputer juga perlu cara untuk menata data. Cara inilah yang kita sebut Struktur Data.
A. Tujuan Pembelajaran
Setelah mempelajari bab ini, siswa diharapkan mampu:
Menjelaskan pengertian dan pentingnya struktur data.
Mengidentifikasi beberapa jenis struktur data dasar seperti Array, Stack, dan Queue.
Memberikan contoh penerapan struktur data dalam kehidupan sehari-hari.
Membandingkan cara kerja dari struktur data yang berbeda melalui analogi.
B. Apa Itu Struktur Data?
Bayangkan kamu punya perpustakaan pribadi dengan ratusan buku. Jika semua buku hanya ditumpuk begitu saja di lantai, kamu akan kesulitan mencari buku yang kamu inginkan. Tapi, jika kamu menyusunnya di rak berdasarkan abjad judul atau genre, pencarian akan menjadi jauh lebih cepat.
Definisi: Struktur Data adalah cara menyimpan, mengatur, dan mengelola data di dalam komputer agar dapat diakses dan digunakan secara efisien.
Mengapa ini penting? 🤔
Kecepatan: Program akan berjalan lebih cepat jika datanya terorganisir dengan baik.
Efisiensi Memori: Menggunakan memori komputer seperlunya, tidak boros.
Kemudahan Pengelolaan: Data menjadi lebih mudah untuk ditambah, dihapus, atau dicari.
C. Jenis-Jenis Struktur Data Dasar Jenis Struktur Data
Menurut Geeks for Geeks, jenis struktur data terbagi menjadi dua,
yakni struktur data linear dan non linear.
1. Struktur data linear
Data struktur linear berarti struktur data yang
elemen-elemen datanya disusun secara berurutan (linier), yang mana setiap
elemen tertaut pada elemen-elemen sebelum dan selanjutnya yang berdekatan. Data
struktur linear dibagi lagi menjadi dua, yakni statis dan dinamis.
- Struktur
data statis: Struktur data statis memiliki ukuran memori yang tetap.
Contoh struktur data statis yakni Array
- Struktur
data dinamis: Dalam struktur data dinamis, ukurannya tidak tetap dan
dapat diperbarui secara acak selama runtime. Hal ini dianggap
efisien sehubungan dengan kompleksitas memori kode. Contoh struktur data
dinamis yakni Queue, Stack, dan Linked List.
2. Struktur data non-linear
Struktur data ini berarti elemen datanya tidak ditempatkan
secara berurutan. Dalam struktur data non-linear, pengguna tidak dapat
melintasi semua elemen dalam satu proses saja. Beberapa contoh struktur data
non-linear yakni Tree dan Graph.
Mari kita kenali beberapa jenis struktur data
1. Array (Larik)
Array adalah struktur data yang paling dasar. Bayangkan sebuah karton telur atau deretan loker yang sudah diberi nomor.
Konsep: Kumpulan data sejenis yang disimpan di lokasi memori yang berdekatan dan diakses menggunakan indeks (nomor urut, biasanya dimulai dari 0).
Analogi:
Karton Telur: Kamu bisa langsung mengambil telur di lubang ke-5.
Deretan Kursi Bioskop: Kamu bisa langsung menuju kursi nomor
C7.
Karakteristik:
Ukurannya tetap (ditentukan di awal).
Akses data sangat cepat jika tahu nomor indeksnya.
Contoh Nyata:
Menyimpan daftar nama siswa dalam satu kelas.
Menyimpan daftar hari dalam seminggu (
Senin,Selasa,Rabu, ...).
2. Linked List
Linked list adalah struktur data linier di mana elemennya
tidak disimpan pada lokasi memori yang berurutan, melainkan dihubungkan
menggunakan pointer. Linked List terbagi menjadi beberapa jenis seperti
berikut.

- Singly-linked
list: setiap node hanya menunjuk ke node berikutnya
- Doubly
linked list: setiap node menunjuk ke node sebelum dan sesudahnya
- Circular
linked list: node terakhir menunjuk ke node pertama membentuk
lingkaran
- Doubly
circular linked list: gabungan circular dan doubly linked list
Penerapan Linked List di kehidupan sehari-hari:
- Dalam
Round-Robin scheduling, menggunakan linked list untuk
mengatur giliran.
- Pada
aplikasi penampil gambar, gambar sebelumnya dan berikutnya dihubungkan
melalui linked list, sehingga dapat diakses dengan tombol
sebelumnya dan berikutnya.
- Pada
daftar putar musik, lagu-lagu terhubung dengan lagu sebelumnya dan
berikutnya untuk pemutaran yang lancar.
3. Stack (Tumpukan)
Namanya sudah menjelaskan semuanya. Bayangkan setumpuk piring atau buku.
Konsep: Data yang terakhir masuk adalah data yang pertama kali keluar. Ini disebut LIFO (Last-In, First-Out).
Analogi:
Tumpukan Piring: Kamu akan mengambil piring yang paling atas (yang terakhir diletakkan).
Tombol "Undo" (Ctrl+Z): Saat kamu menekan "Undo", tindakan terakhirmulah yang dibatalkan pertama kali.
Operasi Utama:
Push: Menambah data ke atas tumpukan.
Pop: Mengambil data dari atas tumpukan.
Contoh Nyata:
Fitur "Undo" atau "Redo" pada aplikasi.
Riwayat halaman (tombol "Back") pada browser.
4. Queue (Antrean)
Sama seperti antrean di dunia nyata, siapa yang datang duluan, dia yang dilayani duluan.
Konsep: Data yang pertama masuk adalah data yang pertama kali keluar. Ini disebut FIFO (First-In, First-Out).
Analogi:
Antrean di kasir: Orang yang pertama kali mengantre akan dilayani lebih dulu.
Antrean cetak (printer queue): Dokumen yang kamu kirim pertama kali ke printer akan dicetak lebih dulu.
Operasi Utama:
Enqueue: Menambah data ke akhir antrean.
Dequeue: Mengambil data dari awal antrean.
Contoh Nyata:
Antrean pelanggan di bank atau supermarket.
Pesan masuk di aplikasi chat yang ditampilkan berurutan.
D. Rangkuman Perbandingan
E. Aktivitas & Diskusi Kelompok 💡
Diskusikan dengan teman sebangkumu!
Kamu sedang membuat fitur playlist musik di sebuah aplikasi. Pengguna bisa mendengarkan lagu secara berurutan dari awal sampai akhir. Struktur data apa yang paling cocok untuk menyimpan urutan lagu tersebut? Queue atau Stack? Jelaskan alasanmu!
Saat kamu membuka banyak tab di browser, lalu kamu menekan tombol "Back" berulang kali, halaman web yang kamu kunjungi akan mundur satu per satu. Proses ini mirip dengan cara kerja struktur data apa?
Berikan satu contoh lain penggunaan Array dalam aplikasi atau game yang kamu tahu!
F. Evaluasi Mandiri
Jawablah pertanyaan berikut untuk menguji pemahamanmu:
Jelaskan dengan bahasamu sendiri, mengapa kita membutuhkan struktur data!
Struktur data yang menggunakan prinsip "yang terakhir masuk, yang pertama keluar" (LIFO) adalah... a. Array b. Queue c. Stack
Seorang kasir melayani pembeli sesuai urutan kedatangan mereka. Sistem ini adalah contoh sempurna dari struktur data... a. Array b. Queue c. Stack
Komentar
Posting Komentar