0Pricing
C Academy · Pelajaran

Linked List

Pelajari cara kerja linked list dan cara menerapkan operasi seperti penyisipan dan penghapusan.

Linked List adalah pelajaran C Academy gratis di CoddyKit. Ini adalah pelajaran 1 dari 3. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar C Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus C Academy mencakup 3 pelajaran total.

Senarai Berantai dalam C

Senarai Berantai dalam C

Senarai berantai adalah struktur data dinamis yang elemennya (Node) saling terhubung menggunakan pointer.

Dalam pelajaran ini, Anda akan mempelajari:

  • Cara kerja senarai berantai.
  • Cara menyisipkan dan menghapus Node dalam senarai berantai.
  • Keunggulan senarai berantai dibandingkan array.
Linked List — ilustrasi 1

Contoh: Mendefinisikan Node Senarai Berantai

Contoh: Mendefinisikan Node Senarai Berantai

Dalam C, Node senarai berantai didefinisikan menggunakan struct dengan bidang data dan pointer ke Node berikutnya.

#include <stdio.h>
#include <stdlib.h>

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

int main() {
    struct Node *head = NULL;
    return 0;
}

Menyisipkan Node di Awal

Menyisipkan Node di Awal

Untuk menyisipkan Node baru di awal senarai berantai:

  • Buat Node baru.
  • Atur pointer next-nya ke kepala saat ini.
  • Perbarui pointer kepala.

Contoh: Menyisipkan Node di Awal

Contoh: Menyisipkan Node di Awal

Program ini menyisipkan Node baru di awal senarai berantai.

#include <stdio.h>
#include <stdlib.h>

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

void insertAtBeginning(struct Node **head, int newData) {
    struct Node *newNode = (struct Node*)malloc(sizeof(struct Node));
    newNode->data = newData;
    newNode->next = *head;
    *head = newNode;
}

int main() {
    struct Node *head = NULL;
    insertAtBeginning(&head, 10);
    printf("Inserted: %d\n", head->data);
    return 0;
}

Menghapus Node

Menghapus Node

Untuk menghapus Node dari senarai berantai:

  • Temukan Node yang akan dihapus.
  • Perbarui pointer next milik Node sebelumnya.
  • Bebaskan memori Node yang dihapus.

Contoh: Menghapus Node

Contoh: Menghapus Node

Program ini menghapus Node dari senarai berantai.

#include <stdio.h>
#include <stdlib.h>

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

void deleteNode(struct Node **head, int key) {
    struct Node *temp = *head, *prev;
    if (temp != NULL && temp->data == key) {
        *head = temp->next;
        free(temp);
        return;
    }
    while (temp != NULL && temp->data != key) {
        prev = temp;
        temp = temp->next;
    }
    if (temp == NULL) return;
    prev->next = temp->next;
    free(temp);
}

int main() {
    struct Node *head = (struct Node*)malloc(sizeof(struct Node));
    head->data = 10;
    head->next = NULL;
    deleteNode(&head, 10);
    return 0;
}

Keunggulan Senarai Berantai

Keunggulan Senarai Berantai

Senarai berantai memiliki beberapa keunggulan dibandingkan array:

  • Ukuran dinamis (tidak perlu menentukan ukuran terlebih dahulu).
  • Penyisipan dan penghapusan yang efisien.
  • Tidak ada pemborosan memori akibat ukuran tetap.

Ringkasan

Ringkasan

Dalam pelajaran ini, Anda telah mempelajari:

  • Apa itu senarai berantai dan cara kerjanya.
  • Cara menyisipkan dan menghapus Node.
  • Keunggulan senarai berantai dibandingkan array.

Selanjutnya, kita akan mempelajari tumpukan dan antrean dalam C!

Linked List — ilustrasi 9

Pertanyaan yang Sering Diajukan

Apakah pelajaran “Linked List” gratis?

Ya — teks lengkap “Linked List” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus C Academy, upgrade ke CoddyKit PRO. Kursus C Academy mencakup 3 pelajaran total.

Apa yang akan aku pelajari di “Linked List”?

Pelajari cara kerja linked list dan cara menerapkan operasi seperti penyisipan dan penghapusan. Kamu berlatih C Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.

Apakah aku perlu pengalaman untuk memulai C Academy?

Tidak diperlukan pengalaman sebelumnya. C Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 1 dari 3.

Berapa lama pelajaran “Linked List” memakan waktu?

Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.

Bisakah aku menulis dan menjalankan kode dalam pelajaran C Academy ini?

Ya. Setiap pelajaran C Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.

Semua pelajaran dalam kursus ini

  1. Linked List
  2. Stack dan Queue
  3. Pohon dan Graf
← Kembali ke C Academy