MATERI STRUKTUR DATA LINIER DAN DINAMIS (farel rakha)

Materi Struktur Data: Linier, Dinamis, dan Implementasi Linked List

Materi Struktur Data:
Linier, Dinamis, dan Implementasi Linked List

📌 Apa Itu Struktur Data?

Struktur data adalah cara menyimpan dan mengatur data di dalam komputer agar dapat digunakan secara efisien. Struktur data sangat penting dalam pemrograman karena menentukan seberapa cepat dan efisien program dapat berjalan.

🧩 Struktur Data Linier dan Dinamis

Struktur data linier dan dinamis merupakan dua konsep utama dalam pengorganisasian data. Keduanya memiliki perbedaan dalam hal cara penyimpanan, kemudahan akses, serta fleksibilitas dalam penggunaan memori.

🔸 Struktur Data Linier

Struktur data linier adalah struktur data di mana elemen-elemen disusun secara berurutan. Contohnya adalah array, stack, dan queue.

Contoh Struktur Array

Array menyimpan data dalam indeks berurutan. Namun ukuran array bersifat tetap.

🔸 Struktur Data Dinamis

Berbeda dengan struktur linier yang memiliki ukuran tetap, struktur data dinamis dapat berubah ukuran selama program berjalan. Struktur ini memberikan fleksibilitas dalam manajemen memori.

  • Lebih fleksibel dibanding array.
  • Dapat bertambah/berkurang sesuai kebutuhan.
  • Cocok digunakan untuk data yang jumlahnya tidak pasti.
Contoh Struktur Linked List

🔗 Implementasi Linked List

Linked List adalah contoh nyata dari struktur data dinamis. Di dalam linked list, setiap elemen disebut node yang berisi data dan referensi (pointer) ke elemen selanjutnya.

Jenis-jenis Linked List:

  • Singly Linked List: hanya punya pointer ke node berikutnya.
  • Doubly Linked List: punya pointer ke node sebelumnya dan berikutnya.
  • Circular Linked List: node terakhir menunjuk kembali ke node pertama.

📄 Contoh Kode Linked List (C++)

#include <iostream>
using namespace std;

struct Node {
  int data;
  Node* next;
};

void printList(Node* n) {
  while (n != NULL) {
    cout << n->data << " ";
    n = n->next;
  }
}

int main() {
  Node* head = new Node();
  Node* second = new Node();
  Node* third = new Node();

  head->data = 10;
  head->next = second;

  second->data = 20;
  second->next = third;

  third->data = 30;
  third->next = NULL;

  printList(head);
}
    

Kode di atas menunjukkan bagaimana membuat linked list sederhana yang terdiri dari tiga node dan mencetak datanya satu per satu.

Komentar

Postingan populer dari blog ini