วันอังคารที่ 29 ตุลาคม พ.ศ. 2556

ความหมายและความสำคัญของโครงสร้างข้อมูล

ความหมายของโครงสร้างข้อมูล
           โครงสร้างข้อมูลจึงหมายถึงความสัมพันธ์ระหว่างข้อมูลที่อยู่ในโครงสร้างนั้น สิ่งพื้นฐานในการประมวลผลข้อมูลคอมพิวเตอร์
     โครงสร้างข้อมูล (Data Structures) คือความสัมพันธ์ระหว่างข้อมูลที่อยู่ในโครงสร้างนั้นๆ ซึ่งโครงสร้างข้อมูลนั้นมีหลายโครงสร้างด้วยกัน ไม่ใช่มีเพียงแต่อาร์เรย์ที่เป็นที่รู้จักและเป็นที่นิยมกัน ยังมีโครงสร้างข้อมูลอื่นๆ อีก เช่น ลิงค์ลิสต์ กราฟ สแตก คิว เป็นต้น ดังนั้นหากเลือกโครงสร้างข้อมูลที่เหมาะสมกับงานจะทำให้การประมวลผลนั้นมีประสิทธิภาพและมีความรวดเร็วมากยิ่งขึ้น
      โครงสร้างข้อมูล (File Structure) หมายถึง ลักษณะการจัดแบ่งพิกัดต่าง ๆ ของข้อมูลสำหรับแต่ละระเบียน (Record) ในแฟ้มข้อมูลเพื่อให้คอมพิวเตอร์สามารถรับไปประมวลผลได้ ประกอบด้วยส่วนต่าง ๆ ดังนี้
1. หน่วยข้อมูล (Data Item) หมายถึงส่วนที่เล็กที่สุดของข้อมูล เช่น ตัวเลข ตัวอักษร หรือ สัญลักษณ์พิเศษ จะยังไม่มีความหมายในตัวเอง เล่น เลข 9 อักษร ก เป็นต้น
2. ฟิลด์ข้อมูล (Data Field) หมายถึง การนำเอาหน่วยข้อมูลที่สำคัญและต้องการศึกษามาไว้ด้วยกัน เพื่อเปรียบเทียบกัน เช่น ชื่อ - สกุล คะแนนการสอบครั้งที่ 1 เงินเดือน ซึ่ง ชื่อ สกุล และเงินเดือน คือ 1 ฟิลด์
3. เรคอร์ดข้อมูล (Data Record) หมายถึง การนำฟิลด์หลายฟิลด์มารวมกลุ่มกัน เช่น นักศึกษาแต่ละคน จะมีข้อมูล ชื่อ สกุล วันเดือนปีเกิด อายุ เพศ ข้อมูลของนักศึกษาแต่ละคนคือ 1 เรคอร์ด
4. แฟ้มข้อมูล (Data File) เกิดจากการนำระเบียนหรือเรคอร์ด หลาย ๆ เรคอร์ดที่เกี่ยวข้องกันในด้านใดด้านหนึ่งมารวมกัน เช่น แฟ้มข้อมูลของนักเรียนห้องหนึ่งจำนวน 20 คน ทุกคนต่างก็มีข้อมูล คือ ชื่อ สกุล วันเดือนปีเกิด อายุ เพศ ศาสนา ข้อมูลของนักเรียนทั้งหมดคือ แฟ้มข้อมูล
5. ฐานข้อมูล (Data base) เกิดจากการนำแฟ้มหลาย ๆ แฟ้มข้อมูลเข้าด้วยกันโดยที่แฟ้มข้อมูลแต่ละแฟ้มจะมีความสัมพันธ์กันหรือไม่ก็ตาม ทำให้ข้อมูลไม่ซ้ำซ้อนกัน และสะดวกรวดเร็วในการใช้งาน
         ความสำคัญของการศึกษาโครงสร้างข้อมูล   
โครงสร้างข้อมุลมี2ประเภท
1.
โครงสร้างข้อมูลทางกายภาพ ( Physical Data structure )ไม่มีการคำนวณ เป็นการเป็นการเปรียบเทียบ สามารถเห็นและจับต้องได้ ข้อมูลที่พบเห็นได้ทั่วไป เช่น ข้อมูลดิบ
-
ข้อมูลเบื้องต้น ได้แก่ จำนวนเต็ม (จำนวนเต็มบวก,จำนวนเต็มลบ,จำนวนเต็มศูนย์) จำนวนจริง (มีจุดทศนิยม) และตัวอักขระ
-
ข้อมูลโครงสร้าง ได้แก่ แถวลำดับ ระเบียนข้อมูล แฟ้มข้อมูล
2. 
โครงสร้างข้อมูลทางตรรกะ ( Logical Data Structure) จะมีลักษณะเป็นข้อมูลเชิงจำนวน และได้มีการประมวลมาแล้ว
-
ข้อมูลแบบเชิงเส้น บอกความสัมพันธ์ บอกความเกี่ยวโยง ได้แก่ ลิสต์ แสตก คิว สตริง
-
ข้อมูลแบบไม่เชิงเส้น ได้แก่ ทรี กราฟ
                   ในสาขาวิทยาการคอมพิวเตอร์โครงสร้างข้อมูล (อังกฤษ: Data structure) เป็นวิธีการจัดเก็บข้อมูลในคอมพิวเตอร์เพื่อให้สามารถใช้งานได้อย่างมีประสิทธิภาพ บ่อยครั้งที่การเลือกโครงสร้างข้อมูลที่เหมาะสมจะทำให้เราสามารถเลือกใช้อัลกอริทึมที่มีประสิทธิภาพไปพร้อมกันได้ การเลือกโครงสร้างข้อมูลนั้นโดยส่วนใหญ่แล้วจะเริ่มต้นจากการเลือก แบบชนิดข้อมูลนามธรรมโครงสร้างข้อมูลที่ออกแบบเป็นอย่างดีจะสามารถรองรับการประมวลผลที...่หนักหน่วงโดยใช้ทรัพยากรที่น้อยที่สุดเท่าที่จะเป็นไปได้ ทั้งในแง่ของเวลาและหน่วยความจำ
โครงสร้างข้อมูลแต่ละแบบจะเหมาะสมกับงานที่แตกต่างกัน และโครงสร้างข้อมูลบางแบบก็ออกแบบมาสำหรับบางงานโดยเฉพาะ อย่างเช่น ต้นไม้แบบบีจะเหมาะสำหรับระบบงานฐานข้อมูล
ในกระบวนการออกแบบโปรมแกรมคอมพิวเตอร์การเลือกโครงสร้างข้อมูลเป็นสิ่งสำคัญอันดับแรกที่ต้องคำนึงถึง ซึ่งจากการพัฒนาระบบงานใหญ่ๆได้แสดงให้เห็นว่า ความยากในการพัฒนาและประสิทธิภาพของระบบจะขึ้นอยู่กับโครงสร้างข้อมูลที่เลือกใช้อย่างมาก หลังจากตัดสินใจเลือกโครงสร้างข้อมูลที่จะใช้แล้วก็มักจะทราบถึงอัลกอริทึมที่ต้องใช้ได้ทันที แต่ในบางครั้งก็อาจจะกลับกัน คือ การประมวลผลที่สำคัญๆของโปรแกรมได้มีการใช้อัลกอริทึมที่ต้องใช้โครงสร้างข้อมูลบางแบบโดยเฉพาะ จึงจะทำงานได้เต็มประสิทธิภาพ ถึงอย่างไรก็ตาม ไม่ว่าจะเลือกโครงสร้างข้อมูลด้วยวิธีการใด โครงสร้างข้อมูลที่เหมาะสมก็เป็นสิ่งที่สำคัญมากอยู่ดี
แนวความคิดในเรื่องโครงสร้างข้อมูลนี้ส่งผล กับการพัฒนาวิธีการมาตรฐานต่างๆในการออกแบบและเขียนโปรแกรม หลายภาษาโปรแกรมนั้นได้พัฒนารวมเอาโครงสร้างข้อมูลนี้ไว้เป็นส่วนหนึ่งของระบบโปรแกรม เพื่อประโยชน์ในการใช้ซ้ำ