Skip to main content

โครงสร้างข้อมูลคืออะไร?

โครงสร้างข้อมูลเป็นแนวคิดจากวิทยาศาสตร์คอมพิวเตอร์ที่อ้างถึงวิธีการเฉพาะในการรวบรวมและจัดระเบียบข้อมูลโครงสร้างข้อมูลทั้งหมดใช้ข้อมูลเกี่ยวกับตำแหน่งที่ชิ้นส่วนของข้อมูลที่กำหนดอยู่ในหน่วยความจำของคอมพิวเตอร์เพื่อเข้าถึงข้อมูลนั้นและเชื่อมต่อกับข้อมูลชิ้นอื่น ๆ โครงสร้างข้อมูลจะสร้างหนึ่งในความสัมพันธ์ที่แตกต่างกันระหว่างข้อมูลแต่ละชิ้น.โครงสร้างข้อมูลประเภทต่าง ๆ มีประสิทธิภาพมากขึ้นสำหรับวัตถุประสงค์ที่แตกต่างกันและความยากลำบากในการเข้ารหัสแตกต่างกันอย่างกว้างขวางระหว่างประเภทของโครงสร้างข้อมูล

อาร์เรย์เป็นหนึ่งในโครงสร้างข้อมูลที่ง่ายที่สุด แต่เป็นเครื่องมือที่ทรงพลังมากสำหรับการจัดระเบียบข้อมูลในอาร์เรย์องค์ประกอบจะได้รับการกำหนดที่อยู่หน่วยความจำตามลำดับทำให้ที่อยู่หน่วยความจำของรายการใด ๆ ในอาร์เรย์ได้รับการพิจารณาอย่างรวดเร็วโดยใช้การคำนวณทางคณิตศาสตร์อย่างง่ายซึ่งเป็นข้อได้เปรียบที่สำคัญอาร์เรย์สามารถคิดได้ว่ามีอยู่ในหลายมิติอาร์เรย์หนึ่งมิติอาจมีแนวคิดเป็นรายการอาร์เรย์สองมิติเป็นตารางและอาร์เรย์สามมิติเป็นลูกบาศก์ของแต่ละเซลล์สามารถมีอาร์เรย์ที่มีมากกว่าสามมิติได้เช่นกัน

รายการที่เชื่อมโยงเป็นอีกหนึ่งโครงสร้างข้อมูลที่ง่าย แต่สำคัญมากในรายการที่เชื่อมโยงแต่ละโหนดประกอบด้วยตัวแปรที่มีทั้งข้อมูลจริงและข้อมูลที่ระบุองค์ประกอบถัดไปในรายการรายการที่เชื่อมโยงสามารถก้าวผ่านตราบใดที่ที่อยู่ของโหนดแรกเป็นที่รู้จักโครงสร้างข้อมูลประเภทนี้มีความหลากหลายเนื่องจากให้ยืมตัวเองเพื่อการเติบโตแบบไดนามิกเนื่องจากโหนดใหม่สามารถกำหนดได้ตลอดเวลาการเพิ่มตัวแปรที่มีตำแหน่งของโหนดก่อนหน้าในรายการช่วยให้โครงสร้างข้อมูลประเภทนี้ถูกข้ามไปในทิศทางใดทิศทางหนึ่ง

ต้นไม้สั่งโหนดลำดับชั้นเริ่มต้นด้วยโหนดรูทและลงผ่านหลายเลเยอร์ของโหนดจนกระทั่งทั้งหมดข้อมูลที่จำเป็นได้รับการรองรับภายในโครงสร้างโดยทั่วไปแล้วองค์ประกอบภายในต้นไม้จะถูกจัดเรียงในบางแฟชั่นต้นไม้อาจใช้การเรียงลำดับและอาจให้การเข้าถึงข้อมูลที่เก็บไว้อย่างรวดเร็วมากขึ้นด้วยเหตุนี้เนื่องจากการแตกแขนงแต่ละครั้งจะช่วยลดข้อมูลทั้งหมดจากการพิจารณาซึ่งจะต้องจัดเรียงในรายการที่เชื่อมโยง

ตารางแฮชถูกใช้เพื่อกำหนด Aที่อยู่หน่วยความจำซึ่งจะต้องเก็บข้อมูลชิ้นส่วนที่กำหนดโดยใช้สมการเพื่อแปลงข้อมูลนั้นเป็นที่อยู่หน่วยความจำพวกเขาสามารถเป็นโครงสร้างที่มีประสิทธิภาพมากสำหรับการจัดเก็บและดึงข้อมูลจากอาร์เรย์

โครงสร้างข้อมูลทั้งหมดได้รับการออกแบบมาเพื่อลดจำนวนคำสั่งที่คอมพิวเตอร์ต้องดำเนินการเพื่อค้นหาข้อมูลชิ้นหนึ่งข้อมูลประเภทต่าง ๆ ให้ยืมตัวเองกับโครงสร้างข้อมูลประเภทต่าง ๆ แต่ภาษาการเขียนโปรแกรมที่ทันสมัยส่วนใหญ่ให้การสนับสนุนสำหรับโครงสร้างข้อมูลที่หลากหลายหรือจัดหาเครื่องมือเพื่อให้โปรแกรมเมอร์สามารถเขียนโค้ดโครงสร้างข้อมูลของตัวเอง