Ringkasan Bab 2 informatika
Ringkasan Bab 2 • Berpikir Komputasional •
A. STRUKTUR DATAStruktur data adalah cara mengatur, menyimpan, dan mengakses data. Dengan menggunakan struktur data, data dalam komputer bisa diakses dan diperbarui dengan lebih mudah. Setiap program komputer didasarkan pada data dan algoritma.
Algoritma memungkinkan program komputer memanfaatkan data secara efisien, sementara struktur data berfungsi untuk menyimpan data dalam tata letak tertentu yang berbeda-beda. Karena memori komputer terbatas, pengaturan tata letak data harus dilakukan dengan hati-hati agar data tersusun rapi dan tidak memakan banyak memori.
→Struktur data terdiri dari Graph dan Tree
1. Graph
Graph adalah struktur data yang terdiri dari sejumlah simpul (nodes) yang saling terhubung. Graph merepresentasikan kumpulan objek di mana setiap pasang objek dihubungkan oleh suatu hubungan (link).
Simpul (Node atau Vertex): Objek dalam graph yang merepresentasikan entitas tertentu. Misalnya, dalam graph sosial, setiap simpul bisa mewakili pengguna atau akun.
Sisi (Edge): Hubungan antara dua simpul. Sisi bisa berarah (directed) atau tidak berarah (undirected). Misalnya, dalam graph jalan kota, setiap sisi bisa merepresentasikan jalan yang menghubungkan dua persimpangan.
Graph Terarah (Directed Graph): Graph di mana setiap sisi memiliki arah tertentu, artinya ada simpul awal dan simpul tujuan.
Graph Tidak Terarah (Undirected Graph): Graph di mana sisi tidak memiliki arah tertentu, sehingga hubungan antara dua simpul bersifat simetris.
Bobot Sisi (Edge Weight): Nilai numerik yang terkait dengan sisi dalam graph, digunakan untuk merepresentasikan biaya, jarak, atau nilai lainnya antara dua simpul.
Simpul Tetangga (Neighbor): Simpul yang terhubung langsung dengan simpul tertentu dalam graph. Ada simpul masuk (incoming) dan simpul keluar (outgoing).
Siklus (Cycle): Rangkaian sisi yang membentuk lingkaran kembali ke simpul awal. Graph yang tidak memiliki siklus disebut acyclic.
Graph Berarah Tanpa Siklus (Directed Acyclic Graph): Graph terarah yang tidak memiliki siklus, banyak digunakan dalam berbagai aplikasi seperti perencanaan tugas dan topologi jaringan.
Graph Terhubung (Connected Graph): Jenis graph di mana ada jalur yang menghubungkan setiap pasang simpul.
A. Fungsi Graph:
-Pencarian Jalur dan Rute: Memungkinkan pencarian jalur atau rute terpendek antara dua simpul tertentu, seperti pada aplikasi peta.
-Pemodelan Jaringan: Digunakan untuk merepresentasikan jaringan kompleks seperti jaringan sosial.
-Optimisasi: Digunakan untuk mencari solusi optimal dalam berbagai masalah, seperti algoritma Travelling Salesman untuk menemukan rute terpendek.
B. Jenis-Jenis Graph:
-Directed Graph: Sambungan antara simpul memiliki arah tertentu.
-Undirect Graph: Sambungan antara simpul tidak memiliki arah.
-Weighted Graph: Setiap sambungan memiliki bobot tertentu.
-Unweighted Graph: Semua sambungan memiliki nilai yang sama tanpa bobot.
C . Contoh Penggunaan Graph:
-Media Sosial: Menghubungkan pengguna dengan teman-teman mereka.
-Navigasi dan Peta: Mencari rute terpendek antara lokasi.
-Rekomendasi Produk: Memberikan rekomendasi berdasarkan preferensi.
-Transportasi: Merencanakan rute dan jadwal perjalanan.
-Sirkuit Elektronik: Merancang sirkuit elektronik.
-Pencarian Informasi: Menghubungkan halaman web dalam mesin pencari.
-Rute Pengiriman: Mengatur rute efisien untuk pengiriman barang.
2. Tree Tree adalah struktur data hierarkis yang terdiri dari simpul-simpul yang terhubung satu sama lain dengan menggunakan sisi atau edge. Struktur ini memiliki akar (root), cabang (branches), dan daun (leaves).
a. Istilah-istilah pada Tree:
Node (Simpul): Entitas dalam tree yang mengandung nilai dan pointer yang menunjuk ke simpul di bawahnya (child node).
Child Node (Simpul Anak): Simpul yang merupakan turunan dari simpul induk (parent node).
Leaf Node (Simpul Daun): Simpul yang tidak memiliki child node, terletak di bagian bawah tree.
Root (Akar): Simpul teratas dari sebuah tree.
b. Karakteristik Tree:
-Penjelajahan data pada tree dilakukan oleh algoritma Depth First Search dan Breadth First Search.
-Tidak ada loop dan circuit.
-Tidak memiliki self-loop.
-Disusun dalam model hierarki.
c. Jenis-Jenis Tree:
-General Tree: Tidak memiliki batasan jumlah node pada hierarki tree.
-Binary Tree: Setiap simpul hanya dapat memiliki paling banyak dua simpul anak (left node dan right node).
-Balanced Tree: Tinggi dari subtree kiri dan kanan sama atau berbeda satu.
c. Fungsi dan Kegunaan Tree:
-Membantu dalam pengembangan game. Pengindeksan pada database.
-Decision Tree digunakan dalam analisis keputusan.
-Domain Name Server menggunakan struktur data tree.
-Digunakan pada situs jejaring sosial seperti Facebook, Instagram, dan Twitter.
d. Keunggulan Tree:
-Memungkinkan pemindahan subtree dengan usaha yang minim.
-Mencerminkan hubungan data secara struktural.
-Menawarkan operasi pencarian dan penyisipan yang efisien.
-Baik untuk membangun hierarki data.
1. Mengenal struktur data
Soal: Pilih salah satu jenis graph (terarah atau tidak terarah) dan gambarkan contoh graph sederhana yang terdiri dari minimal 5 simpul (nodes) dan 6 sisi (edges). Beri label pada setiap simpul dan sisi. Jelaskan dalam satu paragraf bagaimana graph tersebut bisa digunakan dalam kehidupan sehari-hari.
Contoh Jawaban:
"Graf ini merupakan graf tidak terarah dengan lima simpul yang masing-masing dihubungkan oleh enam sisi. Contoh penggunaan graf ini dalam kehidupan sehari-hari adalah untuk menggambarkan jaringan pertemanan di media sosial, di mana setiap simpul merepresentasikan pengguna dan setiap sisi mewakili hubungan pertemanan antara dua pengguna."
1. Analisis Tree Sederhana
Soal: Bentuk kelompok yang terdiri dari 3-4 orang. Pilih salah satu jenis tree (misalnya, binary tree). Buat contoh binary tree sederhana yang terdiri dari minimal 7 simpul (nodes). Gambarkan tree tersebut dan jelaskan fungsinya dalam satu paragraf. Setiap anggota kelompok harus memberikan satu contoh nyata bagaimana binary tree bisa digunakan.
Contoh Jawaban:
"Binary tree ini memiliki tujuh simpul yang terhubung dengan struktur hirarkis. Contoh penggunaan binary tree adalah dalam pencarian data yang efisien pada basis data. Setiap anggota kelompok bisa memberikan contoh nyata, misalnya untuk pengurutan data, pencarian cepat dalam direktori file, atau pengelolaan keputusan dalam permainan catur." Catatan: contoh hanya referensi, utamakan originalitas.






Komentar
Posting Komentar