3 สิงหาคม 2552

DTS 05-28/07/2009

ความรู้ที่ได้รับจากเรื่อง Linked List
ลิงค์ลิสต์ (Linked List)
เป็นวิธีการเก็บข้อมูลอย่างต่อเนื่องของอิลิเมนต์ต่างๆโดยมีพอยเตอร์เป็นตัวเชื่อมแต่ละอิลิเมนท์เรียกว่า โหนด (Node) ซึ่งแต่ละโหนด ประกอบด้วย 2 ส่วน คือ
1. Data = เก็บข้อมูลของอิลิเมนท์ อาจจะเป็นรายการเดี่ยวหรือเป็นเรคคอร์ดก็ได้
2. Link Field = ทำหน้าที่เก็บตำแหน่งของโหนดต่อไปในลิสต์เป็นส่วนที่เก็บตำแหน่งของโหนดถัดไป ในโหนดสุดท้ายจะเก็บค่า Null หรือ \0 เป็นตัวบ่งบอกการสิ้นสุดของลิสต์นั้นโหนดแรกของข้อมูล คือ Head Node
โครงสร้างข้อมูลแบบลิงค์ลิสต์แบ่งเป็น 2 ส่วน คือ
1. Head Structure ประกอบด้วย จำนวนโหนดในลิสต์ (Count) พอยเตอร์ที่ชี้ไปยัง
โหนดที่เข้าถึง (Pos) และพอยเตอร์ที่ชี้ไปยังโหนดข้อมูลแรกของลิสต์ (Head)
2. Data Node Structure ประกอบด้วย ข้อมูล (Data) และพอยเตอร์ที่ชี้ไปยังข้อมูลตัวถัดไป
กระบวนงานและฟังก์ชั่นที่ใช้ดำเนินงานพื้นฐาน
1. Create List คือ การสร้าง Head Node
2. Insert Node คือ การรับข้อมูล Data Node
3. Delete Node = ใช้ลบสมาชิกในลิสต์บริเวณตำแหน่งที่ต้องการ
4. Search list = ใช้ค้นหาข้อมูลในลิสต์ที่ต้องการ
5. Traverse = ท่องไปในลิสต์เพื่อเข้าถึงและประมวลผล
6. Retrieve Node = ใช้หาตำแหน่งข้อมูลจากลิสต์
7. EmptyList = ใช้ทดสอบว่าลิสต์ว่างหรือไม่
8. FullList = ใช้ทดสอบว่าลิสต์เต็มหรือไม่
9. list count = ใช้นับจำนวนข้อมูลที่อยู่ในลิสต์
10. destroy list = ใช้สำหรับทำลายลิสต์
***ความรู้เพิ่มเติม***
1. overflow = ค่าที่มีมากเกินกว่าหน่วยความจำจะเก็บได้
2. underflow = ค่าที่มีน้อยมากจนไม่สามารถนำไปเก็บในหน่วยความจำได้
3. ซูโดโค้ด ใช้สำหรับพัฒนาโปรแกรม
4. physical address คือ ที่อยู่ที่สามารถมองเห็นได้ เช่น ซูโดโค้ด โปรแกรมต่างๆ
5. logical address คือ ที่อยู่ที่ไม่สามารถมองเห็นได้ เช่น แนวความคิด
6. logical address จะถูกพัฒนาไปเป็น physical address
7. Data Node จะเรียงลำดับจากน้อยไปมาก

การบ้าน iostream
#include"stdio.h"
#include"math.h"
#include"iostream.h"
void main()
{
int Number = 0;
while(Number <= 100)
{
Number++;
cout <<\n\n"****NUMBER****\n\n";
printf("%d\n",Number); Number++ ;
}
}

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

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