Important Announcement
PubHTML5 Scheduled Server Maintenance on (GMT) Sunday, June 26th, 2:00 am - 8:00 am.
PubHTML5 site will be inoperative during the times indicated!

Home Explore หน่วยที่ 1

หน่วยที่ 1

Published by Plaopilart Panomthep, 2019-06-25 22:42:11

Description: หน่วยที่ 1

Search

Read the Text Version

วชิ า โครงสร้างขอ้ มูลและอลั กอรทิ มึ 3901-2001

หน่วยท่ี 1 โครงสร้างข้อมูลเบ้อื งต้น สาระการเรียนรู้ โครงสร้างข้อมูลพ้ืนฐาน ลักษณะของโครงสร้างข้อมูล ประเภทของโครงสร้างข้อมูล การจาแนกแบบข้อมูล การแทนท่ขี ้อมูลในหน่วยความจา

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

หน่วยท่ี 1 โครงสร้างข้อมูลเบ้อื งต้น ในระบบคอมพิวเตอรจ์ ะมีการจดั โครงสรา้ งขอ้ มูล (Data Structure) ซึ่ง ประกอบดว้ ยขอ้ มูลที่มีขนาดต่างกนั ดงั น้ ี 1. บิต (Bit) เป็นหน่วยข้อมูลท่มี ีขนาดเลก็ ท่สี ดุ ซ่ึงเป็นข้อมูลท่เี คร่ือง คอมพิวเตอร์สามารถเข้าใจและนาไปใช้งานได้ ได้แก่ เลข 0 และ เลข 1 2. ไบต์ (Byte) หรือ อกั ขระ (Character) ได้แก่ ตัวเลข หรือ ตวั อกั ษร หรือ สญั ลักษณพ์ ิเศษ 1 ตัว เช่น 0,1…9,A, B,…Z ซ่งึ 1 ไบต์ จะ เท่ากบั 8 บิต หรือ ตวั อกั ขระ 1 ตัว 3. ฟิ ลด์ (Flied) คือ อกั ขระ ต้งั แต่ 1 ตวั ข้นึ ไป รวมกนั เป็น ฟิ ลด์ เช่น เลข ประจาตวั ช่ือสกุล เป็นต้น

หน่วยท่ี 1 โครงสร้างข้อมูลเบ้อื งต้น 4. เรคคอรด์ (Record) คอื การนาเอาฟิ ลดห์ ลายฟิ ลด์และมี ความสมั พันธม์ ารวมกลุ่มกนั เช่น นักเรียนแต่ละคนจะมขี ้อมูลท่เี ก่ยี วกบั ช่ือ สกุล อายุ เพศ เกรดเฉล่ียฯลฯ โดยข้อมูลในลักษณะน้ีคอื 1 เรคคอร์ดน่นั เอง 5. แฟ้ มขอ้ มูล หรือ ไฟล์ ( Flies) คอื เรคคอร์ดหลายๆ เรคคอร์ด รวมกนั และเป็นเร่ืองเดยี วกนั เช่น แฟ้ มข้อมูลนกั เรียนห้อง ม.1/1 จานวน 50 คน ทุก คนจะมขี ้อมูลเก่ยี วกบั ช่ือ สกุล เพศ อายุ เกรดเฉล่ีย ฯลฯ ซ่ึงข้อมูลท้งั หมดน้ีของ นักเรียนจานวน 50 คนน้ี เรียกว่า แฟ้ มข้อมูล 6. ฐานขอ้ มูล (Database) คือ การเกบ็ รวบรวมไฟล์หรือแฟ้ มข้อมูลหลายๆ ไฟล์ท่เี ก่ยี วข้องมารวมกนั

หน่วยท่ี 1 โครงสร้างข้อมูลเบ้อื งต้น โครงสรา้ งขอ้ มูล (DATA STRUCTURE) โครงสร้างหรือลักษณะเฉพาะของชุดข้อมูลท่ใี ช้ในระบบคอมพิวเตอร์ เกดิ จากการนาชนดิ ข้อมูลต่างๆ มารวมกนั จนกลายเป็นโครงสร้าง การจัดการข้อมูลใน หน่วยความจาภายในเคร่ืองคอมพิวเตอร์ ให้มีความสมั พันธก์ นั ภายในกลุ่มข้อมูลให้มี รปู แบบหรือข้อกาหนดท่ชี ัดเจนในการกาหนดคุณสมบัติ เพ่ือสร้างความสมั พันธภ์ ายใน กลุ่มข้อมูล ซ่งึ มอี ยู่หลายรปู แบบ เช่น ARRAY, LINK-LIST, STACK, QUEUE,TREE เป็นต้น

หน่วยท่ี 1 โครงสร้างข้อมูลเบ้อื งต้น ประเภทของโครงสรา้ งขอ้ มูล แบ่งออกเป็น 2 ประเภท 1. โครงสร้างข้อมูลเชิงเส้น (LINEAR DATA STRUCTURE) 2. โครงสร้างข้อมูลไม่เชิงเส้น (NON-LINEAR DATA STRUCTURE)

หน่วยท่ี 1 โครงสร้างข้อมูลเบ้อื งต้น 1.โครงสรา้ งขอ้ มูลเชิงเสน้ เป็นรปู แบบโครงสร้างของการจัดเกบ็ ข้อมูล ท่มี กี าร จัดเรียงข้อมูลให้ต่อเน่ืองกนั และเข้าถงึ ข้อมูลตามลาดับ เช่น โครงสร้างข้อมูล แบบ LINKED LIST, STACK และ QUEUE

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

หน่วยท่ี 1 โครงสร้างข้อมูลเบ้อื งต้น Linked List โครงสร้างข้อมูลแบบลงิ ค์ลิสท์ ถอื เป็นโครงสร้างข้อมูลท่สี าคัญมาก อกี ประเภทหน่ึง เพราะเป็นโครงสร้างข้อมูลท่สี ร้างข้นึ มาเพ่ือหลีกเล่ียงปัญหาการ เสยี เวลาในการเพ่ิมและลบข้อมูลของโครงสร้างข้อมูลแบบอาร์เรย์ ปัญหาและความ ยุ่งยากในการปฏบิ ตั กิ ารเพ่ิมข้อมูลเข้าหรือลบข้อมูลออกออกจากอาร์เรย์ อาจแก้ไขได้ โดยการใช้ลิงค์ลิสท์ ซ่งึ ข้อมูลแต่ละตวั ถูกจัดเกบ็ อย่างกระจดั กระจายในหน่วยความจา หลัก อาจจะไม่ได้ใช้เน้ือท่ที ่เี รียงต่อเน่ืองกนั แต่มกี ารเช่ือมโยงถงึ กนั ระหว่างข้อมูลได้ โดยใช้ตวั ช้ีภายในโหนด (Internal Pointer) หรือเรียกอกี อย่างว่าลิงค์ ฟิ ลด์ (Linked Field) เกบ็ เลขท่คี วามจาหลัก (address) ของข้อมูลท่มี าเช่ือมต่อ กนั

หน่วยท่ี 1 โครงสร้างข้อมูลเบ้อื งต้น 2.โครงสรา้ งขอ้ มูลไม่เชิงเสน้ เป็นรปู แบบโครงสร้างของการจัดเกบ็ ข้อมูล ท่มี ีการ จัดเรียงข้อมูลไม่ต่อเน่ืองกนั ใช้วิธกี ารเข้าถงึ ข้อมูลด้วยการระบุตาแหน่งเช่นโครงสร้าง ข้อมูลแบบ TREE และ GRAPH เป็นต้น

หน่วยท่ี 1 โครงสร้างข้อมูลเบ้อื งต้น Stack สแตกเป็นโครงสร้างข้อมูลแบบลเิ นยี ร์ลิสต์(linear list) ท่สี ามารถนาข้อมูล เข้าหรือออกได้ทางเดียวคอื สว่ นบนของสแตกหรือ หรือเรียกว่า ทอ๊ ปของสแตก (Top Of Stack) ซ่งึ คุณสมบัตดิ ังกล่าวเรียกว่า ไลโฟลิสต์ (LIFO list: Last-In- First-Out list) หรือ พชู ดาวน์ลิสต์ (Pushdown List) คือสมาชิกท่เี ข้าลิสต์ท่ี หลังสดุ จะได้ออกจากลิสต์ก่อน หรือ เข้าหลงั ออกก่อน การเพ่ิมข้อมูลเข้าสแตกจะ เรียกว่าพชู ช่ิง (pushing) การนาข้อมูลจากสแตกเรียกว่า ป๊ อปป้ิ ง (poping) การ เพ่ิมหรือลบข้อมูลในสแตกทาท่ที อ๊ ปของสแตก ทอ๊ ปของสแตกน้เี องเป็นตัวช้ีสมาชิกตัว ท้ายสดุ ของสแตก

หน่วยท่ี 1 โครงสร้างข้อมูลเบ้อื งต้น คิว(Queue)เป็นโครงสร้างข้อมูลแบบเชิงเส้นหรือลิเนยี ร์ลิสตซ่งึ การเพ่ิมข้อมูลจะ กระทาทปี ลายข้างหน่งึ ซ่งึ เรียกว่าสวนท้ายหรือเรียร์ (rear)และการนาข้อมูลออกจะ กระทาท่ปี ลายอกี ข้างหน่ึงซ่ึงเรียกวา ส่วนหน้า หรือฟรอนต(์ front)ลักษณะการทางาน ของคิวเป็นลักษณะของการเข้าก่อน ออกก่อนหรือท่เี รียกว่า FIFO (First In First Out)


Like this book? You can publish your book online for free in a few minutes!
Create your own flipbook