More Related Content More from Meaw Sukee (20) Linklist2. เปนรูปแบบไมเรียงตามลาดับสมาชิก ลักษณะทางกายภาพไมจาเปนตอง
ป ไ ี ํ ัส ิ ั ไ ํ ป
เหมือนกัน
สมาชิิกแตละตััวจะมีีการชีี้ (point) ไ งสมาชิิกตััวถัดไป
ไปยัั ัไ
สมาชิกทุกในรายการจะเชื่อมตอ (link) เขาดวยกัน
สรุปคือ
◦ โครงสรางขอมูลแบบลิ้งคลิสต (Linked List) เปนโครงสรางขอมูลที่
สมาชิกแตละตัว เรียกวาโหนด (Node) จะเรียงลําดับตามการเชื่อมโยง
จะประกอบดวยชอง 2 ชอง ดังนี้
3. Node
INFO LINK
INFO ใชเก็บขาวสารหรือคาของขอมูลตางในลิสต (List)
Link ใชเก็บตําแหนงที่อย (Address) ของโหนด (N de) ถัดไป
ใชเกบตาแหนงทอยู (Node) ถดไป
ซึ่งตําแหนงนี้เรียกวาตัวชี้ (pointer)
5. โครงสรางสแตกและคิิวมีการใชอารเรยในการเก็บคา สมาชิกทุกตัว จึงตอง
โ ส ส ี ใ ใ ็ ส ิ ั ึ
เปนชนิดเดียวกัน
โครงสรางลิิ้งคลิสตมีโครงสรางขอมูลตางกันได
โ ั ไ
โครงสรางลิ้งคลิสตปฏิบัติการแทรกขอมูลและลบขอมูล เพียงแตยายการชี้
ของตัวแปรพอยนเตอร ทําใหสมาชิกตัวอื่นไมมีผลกระทบ
คาใชจายโครงสรางลิ้งคลิสตสูงกวา และใชพื้นที่เพิ่มมากขึ้น สําหรับสวนการ
เชื่อมตอไปยังโหนดถัดไป
โครงสรางลิ้งลิสตใชเวลามากในการคนหาโหนดที่ตองการ
6. ตวอยาง โครงสรางขอมูลอารเรย (Array) ชอ D มขนาด 8
ตัวอยาง โครงสรางขอมลอารเรย ชื่อ มีขนาด
ตําแหนง มีขอมูลดังนี้ 5,10,20,25,30,35,40 และตองการเพิ่มขอมูลที่มีคา
15 เขาไปในอารเรยนี้ โดยเรยงลาดบ ใหแสดงแผนภาพในการเพิ่มขอมล
เขาไปในอารเรยน โดยเรียงลําดับ ใหแสดงแผนภาพในการเพมขอมูล
5 10 20 25 30 35 40
0 1 2 3 4 5 6 7
7. 1. ยายขอมูล A(6) ไปอยูตําแหนงที่ 7
5 10 20 25 30 35 40
0 1 2 3 4 5 6 7
2. ยายขอมูล A(5) ไปอยูตําแหนงที่ 6
5 10 20 25 30 35 40
0 1 2 3 4 5 6 7
8. 3. ยายขอมูล A(4) ไปอยูตําแหนงที่ 5
5 10 20 25 30 35 40
0 1 2 3 4 5 6 7
4. ยายขอมูล A(3) ไปอยูตําแหนงที่ 4
5 10 20 25 30 35 40
0 1 2 3 4 5 6 7
9. 5. ยายขอมูล A(2) ไปอยูตําแหนงที่ 3
5 10 20 25 30 35 40
0 1 2 3 4 5 6 7
6. แทรก 15 ในตําแหนงที่ 2
5 10 15 20 25 30 35 40
0 1 2 3 4 5 6 7
10. โครงสรางแบบลิ้งกลิสต
head
5 10 20 25 30 35 40
1. ขอที่วาง 1 ที่ สําหรับการแทรกขอมูล 15
2. เปลี่ยนลิงก (link) ของขอมูล 15 ใหชี้ที่ขอมูล 20
head
5 10 20 25 30 35 40
15
14. 1. Node (P) หมายถึง Node ที่ถูกชี้โดย Pointer P
2.
2 INFO (P) หมายถึง ขาวสารของโหนดทถูกชี้โดย P
หมายถง ขาวสารของโหนดที่ถกชโดย
3. LINK (P) หมายถึง ตําแหนงที่อยูขอโหนดที่ถูกชี้โดย P
15. Linked List ประกอบดวยหนวยความจําเปนสวนๆ เรียกวา node
ถ ปน
ถาเปน array จะใชพื้นที่หนวยความจาตดตอกน จ รวมกนเปน
จ ชพนทหนวยคว มจํ ติดตอกัน จะรวมกัน ปน
โครงสรางขอมูลแบบเชื่อมโยงเดี่ยวขนาดใหญที่รวบรวม
หนวยความจาน วา
หนวยความจํานี้ วา storage pool
16. การนําขอมูลเขา (insertion)
การนําขอมูลเขานั้นเราจะเปลี่ยนเฉพาะคาตัวชี้ เทานั้น โดยไมตองยาย
ขอมูล
(1) (2) (3)
10 20 10 20 10 20
15 15 15
19. H
1 3
-อานขอมูลตัวที่ 2 เขามา
-ตััวชี้ี P (pointer P) แสดงวาเปนตััวชี้ชั่วคราว
i ป ี
L P
H
(2)
1 3
- Link ขอมูลโหนดแรกกับโหนด 2
P L
(3)
20. H
1 3 5 - อานขอมูลตัวที่ 3 เขามา
L P
(4)
H
- linkขอมูลโหนดที่ 2 กับ โหนดที่ 3 1 3 5
P L
(5)
21. H
1 3 5 7
L P
(6)
- อานขอมูลตัวที่ 4 เขามา
22. H
1 3 5 7
P L
(7)
- Link ขอมูลโหนดที่ 3 กับ โหนดที่ 4
23. H
1 3 5 7 9
L P
(8)
- อานขอมูลตัวที่ 5 เขามา
24. H
1 3 5 7 9
L
(9)
- Link ขอมูลโหนดที่ 4 กับโหนดที่ 5
27. การเชือมโยงแบบคู (Doubly Linked List) มีี ตัวชี้ี 2 ตััวชีคือ LLINK ซึง
ื่ โ ( i i ) ั ี้ ึ่
จะชี้ไปยังโหนดดานซาย และ RLINK ชี้ไปยังโหนดดานขวา
LLINK INFO RLINK
F ^ 1 3 7 ^ R
ตัวชี้ F (Pointer F) หมายถึง ตัวชี้ดานหนา
ตัวชี้ R (Pointer R) หมายถึง ตัวชี้ดานหลัง