17 กันยายน, 2552

DTS05-28/07/2009

เรื่อง Linked ListLinked List
เป็นการจัดเก็บชุดข้อมูลมีพอยเตอร์เป็นตัวเชื่อมโยงต่อเนื่องกันไปตามลำดับซึ่งในลิงค์ลิสต์จะประกอบไปด้วยข้อมูลที่เรียกว่า
โหนด (Node) ในหนึ่งโหนดจะประกอบด้วย1.ส่วนของข้อมูลที่ต้อง
การจัดเก็บ เรียกว่าส่วน (Data)2.ส่วนที่เป็นพอยน์เตอร์ที่ชี้ไปยังโหนด
ถัดไป (Link) หรือชี้ไปยังโหนดอื่นๆที่อยู่ในลิสต์**หากโหนดแรกไม่มีข้อมูลหรือไม่มีข้อมูลในโหนดที่อยู่ถัดไป
ส่วนที่เป็นพอยน์เตอร์หรือ Link จะเก็บค่า NULL เขียนแทนด้วย
เครื่องหมาย กากบาทโครงสร้างข้อมูลแบบลิงค์ลิสต์ประกอบด้วย 2 ส่วน1.Head Structure แบ่งเป็น 3ส่วน-count เป็นการนับจำนวนข้อมูลที่มีอยู่ในลิสต์นั้น-pos พอยเตอร์ที่ชี้ไปยังโหนดที่เข้าถึง-head พอยเตอร์ที่ชี้ไปยังโหนดแรกของลิสต์2.Data Node Structure จะประกอบด้วย ข้อมูลและพอยเตอร์
ที่ชี้ไปโหนดถัดไปการเพิ่มข้อมูลลงไปในลิงค์ลิสต์นั้น จากที่ Head Structure
ในส่วนของ count จะมีค่าเป็น 0 นั้นหมายถึงในลิสต์นั้นยังไม่มี
ข้อมูลใดเลย ส่วน head จะมีเครื่องหมายกากบาท นั้นหมายถึง
ในลิสต์นั้นไม่มีการเชื่อมโยงไปยังข้อมูลแรก แต่ถ้าต้องการเพิ่ม
ข้อมูลลงไปในลิสต์ Data Node ในส่วนของข้อมูล (Data)จะมี
ค่าเก็บอยู่ แล้ว count ก็จะเปลี่ยนค่าจาก 0 เป็น 1 คือ การบ่งบอก
ถึงจำนวนข้อมูลที่มีอยู่ในลิสต์นั้น แล้ว head ก็จะชี้ไปยัง
ข้อมูล (Data) ตัวแรกของลิสต์ ส่วนพอยเตอร์ที่ชี้ไปโหนดถัดไป
จะเป็นเครื่องหมายกากบาทแทน
การลบข้อมูลในลิงค์ลิสต์ ถ้าต้องการลบข้อมูลตัวใดในลิสต์
สามารถลบได้เลย แต่ต้องเปลี่ยน head เพื่อชี้ไปยังข้อมูลตัวแรก
ของลิสต์กรณีที่ลบข้อมูลตัวแรกออก แล้ว link คือ เมื่อลบข้อมูล
ตัวใดออกควรชี้ link ถัดไปให้ถูกต้องด้วย

ไม่มีความคิดเห็น:

แสดงความคิดเห็น