ความหมายของโครงสร้างข้อมูล
คำว่า “โครงสร้างข้อมูล” (Data structures) เกิดจากคำสองคำ คือ “โครงสร้าง” และ “ข้อมูล” ซึ่งคำว่า “โครงสร้าง”
เป็นความสัมพันธ์ระหว่างสมาชิกในกลุ่ม ดังนั้นโครงสร้างข้อมูลจึงหมายถึงความสัมพันธ์ระหว่างข้อมูลที่อยู่ในโครงสร้างนั้น สิ่งพื้นฐา
นในการประมวลผลข้อมูลคอมพิวเตอร์ คือ ข้อมูล (Data) ดังนั้นการศึกษาถึงความสัมพันธ์ของข้อมูลจึงมีความสำคัญเป็นอย่างมากใน
ศาสตร์คอมพิวเตอร์ (computer science)
โครงสร้างข้อมูลในภาษาคอมพิวเตอร์ที่ใช้กันอยู่ในปัจจุบันจำแนกออกเป็น 3 ประเภท
- จำนวนจริง (real)
- ตัวอักขระ (character)
- เซต (set)
- ระเบียนข้อมูล (record)
- แฟ้มข้อมูล (file)
3. โครงสร้างข้อมูลซับซ้อน (Compound data structure) เป็นการนำเอาข้อมูลองค์ประกอบอย่างง่าย ประกอบขึ้นมาเป็นโครงสร้างข้อมูลซับซ้อน
โครงสร้างข้อมูลประเภทนี้สามารถแบ่งออกได้เป็น 2 ประเภทคือ
เป็นความสัมพันธ์ระหว่างสมาชิกในกลุ่ม ดังนั้นโครงสร้างข้อมูลจึงหมายถึงความสัมพันธ์ระหว่างข้อมูลที่อยู่ในโครงสร้างนั้น สิ่งพื้นฐา
นในการประมวลผลข้อมูลคอมพิวเตอร์ คือ ข้อมูล (Data) ดังนั้นการศึกษาถึงความสัมพันธ์ของข้อมูลจึงมีความสำคัญเป็นอย่างมากใน
ศาสตร์คอมพิวเตอร์ (computer science)
โครงสร้างข้อมูลในภาษาคอมพิวเตอร์ที่ใช้กันอยู่ในปัจจุบันจำแนกออกเป็น 3 ประเภท
1. โครงสร้างข้อมูลเบื้องต้น (Primitive data structure) เป็นข้อมูลพื้นฐานซึ่งมีโครงสร้างข้อมูลไม่ซับซ้อนจะต้องมีในภาษาคอมพิวเตอร์ทุกภาษา
จะเป็นลักษณะที่กำหนดในภาษานั้นๆ ตัวอย่างของข้อมูลประเภทนี้ เช่น
- จำนวนเต็ม (integer)- จำนวนจริง (real)
- ตัวอักขระ (character)
2. โครงสร้างอย่างง่าย (Simple data structure) เป็นข้อมูลที่เกิดจากการนำโครงสร้างข้อมูลเบื้องต้นมาประกอบกันเป็นโครงสร้างข้อมูลที่หลากหลายขึ้น
ข้อมูลที่ใช้ในเครื่องคอมพิวเตอร์ยุคแรกเป็นข้อมูลเบื้องต้นเท่านั้นแต่ในปัจจุบันภาษาคอมพิวเตอร์เกือบทุกภาษามีข้อมูลโครงสร้างด้วยแทบทั้งสิ้น
ตัวอย่างข้อมูลโครงสร้าง เช่น
- แถวลำดับ (array)- เซต (set)
- ระเบียนข้อมูล (record)
- แฟ้มข้อมูล (file)
3. โครงสร้างข้อมูลซับซ้อน (Compound data structure) เป็นการนำเอาข้อมูลองค์ประกอบอย่างง่าย ประกอบขึ้นมาเป็นโครงสร้างข้อมูลซับซ้อน
โครงสร้างข้อมูลประเภทนี้สามารถแบ่งออกได้เป็น 2 ประเภทคือ
3.1 โครงสร้างข้อมูลแบบเชิงเส้น (linear data structures) เป็นชนิดข้อมูลที่ความสัมพันธ์ของข้อมูลเรียงต่อเนื่องกัน
โดยข้อมูลตัวที่ 2 อยู่ต่อจาก ข้อมูลตัวที่ 1 ข้อมูลตัวที่ 3 อยู่ต่อจากข้อมูลตัวที่ 2 และข้อมูลตัวที่ n อยู่ต่อจากข้อมูลตัวที่ n - 1 ตัวอย่างโครงสร้างข้อมูลแบบเชิงเส้น เช่น
- ลิสต์ (list)
- สแตก (stack)
- คิว (queue)
- สตริง (string)
3.2 โครงสร้างข้อมูลแบบไม่ใช่เชิงเส้น (non-linear data structures) เป็นชนิดข้อมูลที่ข้อมูลแต่ละตัวสามารถมีความสัมพันธ์กับข้อมูลอื่นได้หลายตัว
ตัวอย่างโครงสร้างข้อมูลแบบไม่ใช่เชิงเส้น
- ทรี (tree)
- กราฟ (graph)