🧱 Struktur Data Lanjutan
Level: Advanced
Struktur data lanjutan digunakan untuk menyimpan dan mengelola data secara efisien dalam skala besar atau kompleks.
Bayangkan seperti arsip digital: kita butuh sistem yang cepat dan terorganisir untuk mencari, menyisipkan, dan menghapus data.
📖 Jenis Struktur Data Lanjutan
- Stack: LIFO (Last In First Out), seperti tumpukan piring.
- Queue: FIFO (First In First Out), seperti antrean kasir.
- Deque: Double-ended queue, bisa tambah/hapus dari depan dan belakang.
- Linked List: Rantai node yang saling terhubung.
- Tree: Struktur hierarki, cocok untuk data terstruktur seperti folder.
🛠️ Praktik Kecil
# Stack dengan list
stack = []
stack.append("A")
stack.append("B")
print(stack.pop()) # Output: B
# Queue dengan deque
from collections import deque
queue = deque()
queue.append("A")
queue.append("B")
print(queue.popleft()) # Output: A
# Linked List sederhana
class Node:
def __init__(self, data):
self.data = data
self.next = None
head = Node("A")
head.next = Node("B")
print(head.data, "->", head.next.data)
👉 Perhatikan cara kerja masing-masing struktur: urutan masuk dan keluar berbeda.
🎮 Mini Challenge
Buat program yang mensimulasikan:
- Stack untuk undo/redo teks.
- Queue untuk antrean pelanggan.
- Linked List untuk menyimpan daftar tugas dengan kemampuan menambah dan menghapus node.
Tugas tambahan: Implementasikan pencarian node dalam linked list berdasarkan nilai.