ลิงก์ลิสต์
เรียนรู้การทำงานของลิงก์ลิสต์และวิธีนำการดำเนินการอย่างการแทรกและการลบไปใช้
ลิงก์ลิสต์ เป็นบทเรียน C Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 1 จากทั้งหมด 3 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน C Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส C Academy มีบทเรียนทั้งหมด 3 บทเรียน
รายการเชื่อมโยงใน C
รายการเชื่อมโยงใน C
รายการเชื่อมโยงคือโครงสร้างข้อมูลแบบไดนามิกที่องค์ประกอบต่าง ๆ (โหนด) เชื่อมต่อกันด้วยตัวชี้
ในบทเรียนนี้ คุณจะได้เรียนรู้:
- รายการเชื่อมโยงทำงานอย่างไร
- วิธีแทรกและลบโหนดในรายการเชื่อมโยง
- ข้อดีของรายการเชื่อมโยงเมื่อเทียบกับอาร์เรย์

ตัวอย่าง: การกำหนดโหนดของรายการเชื่อมโยง
ตัวอย่าง: การกำหนดโหนดของรายการเชื่อมโยง
ใน C โหนดของรายการเชื่อมโยงกำหนดโดยใช้ struct ซึ่งมีฟิลด์ข้อมูลและตัวชี้ไปยังโหนดถัดไป
#include <stdio.h>
#include <stdlib.h>
struct Node {
int data;
struct Node *next;
};
int main() {
struct Node *head = NULL;
return 0;
}การแทรกโหนดที่จุดเริ่มต้น
การแทรกโหนดที่จุดเริ่มต้น
หากต้องการแทรกโหนดใหม่ที่จุดเริ่มต้นของรายการเชื่อมโยง:
- สร้างโหนดใหม่
- กำหนดให้ตัวชี้
nextชี้ไปยังส่วนหัวปัจจุบัน - อัปเดตตัวชี้ส่วนหัว
ตัวอย่าง: การแทรกโหนดที่จุดเริ่มต้น
ตัวอย่าง: การแทรกโหนดที่จุดเริ่มต้น
โปรแกรมนี้แทรกโหนดใหม่ที่จุดเริ่มต้นของรายการเชื่อมโยง
#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;
}การลบโหนด
การลบโหนด
หากต้องการลบโหนดออกจากรายการเชื่อมโยง:
- ค้นหาโหนดที่จะลบ
- อัปเดตตัวชี้
nextของโหนดก่อนหน้า - คืนหน่วยความจำของโหนดที่ลบแล้ว
ตัวอย่าง: การลบโหนด
ตัวอย่าง: การลบโหนด
โปรแกรมนี้ลบโหนดออกจากรายการเชื่อมโยง
#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;
}ข้อดีของรายการเชื่อมโยง
ข้อดีของรายการเชื่อมโยง
รายการเชื่อมโยงมีข้อดีหลายประการเมื่อเทียบกับอาร์เรย์:
- ขนาดเปลี่ยนแปลงได้ (ไม่จำเป็นต้องระบุขนาดล่วงหน้า)
- แทรกและลบข้อมูลได้อย่างมีประสิทธิภาพ
- ไม่สิ้นเปลืองหน่วยความจำเนื่องจากมีขนาดตายตัว
สรุป
สรุป
ในบทเรียนนี้ คุณได้เรียนรู้:
- รายการเชื่อมโยงคืออะไรและทำงานอย่างไร
- วิธีแทรกและลบโหนด
- ข้อดีของรายการเชื่อมโยงเมื่อเทียบกับอาร์เรย์
ถัดไป เราจะสำรวจสแตกและคิวใน C กัน

คำถามที่พบบ่อย
บทเรียน “ลิงก์ลิสต์” ฟรีหรือไม่
ใช่ — ข้อความเต็มของ “ลิงก์ลิสต์” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส C Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส C Academy มีบทเรียนทั้งหมด 3 บทเรียน
คุณจะเรียนรู้อะไรในบทเรียน “ลิงก์ลิสต์”
เรียนรู้การทำงานของลิงก์ลิสต์และวิธีนำการดำเนินการอย่างการแทรกและการลบไปใช้ คุณปฏิบัติ C Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน
คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน C Academy หรือไม่
ไม่จำเป็นต้องมีประสบการณ์มาก่อน C Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 1 จากทั้งหมด 3 บทเรียน
บทเรียน “ลิงก์ลิสต์” ใช้เวลานานแค่ไหน
บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย
ฉันเขียนและรันโค้ดในบทเรียน C Academy นี้ได้ไหม
ได้ บทเรียน C Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ
บทเรียนทั้งหมดในหลักสูตรนี้
- ลิงก์ลิสต์
- สแตกและคิว
- ต้นไม้และกราฟ