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 Manote Keaowka, 2019-09-03 23:21:36

Description: หน่วยที่ 1 รู้จักกับโครงสร้างข้อมูลและอัลกอริทึม

Search

Read the Text Version

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

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

  ประเภทของโครงสรางขอ มลู   แบง ออกเปน 2 ประเภท    1. โครงสรางขอมลู เชงิ เสน (LINEAR DATA STRUCTURE)    2. โครงสรา งขอ มูลไมเ ชิงเสน (NON-LINEAR DATA STRUCTURE)     1. โครงสรางขอ มูลเชิงเสน เปน รปู แบบโครงสรา งของการจัดเกบ็ ขอมูล ที่มกี ารจดั เรียงขอมูล ใหต อเน่อื งกนั และเขา ถึงขอมลู ตามลําดับ เชน โครงสรางขอ มลู แบบ LINKED LIST,  STACK และQUEUE                               

2. โครงสรางขอมลู ไมเชงิ เสน เปน รูปแบบโครงสรางของการจัดเก็บขอมูล ทีม่ กี ารจดั เรยี ง ขอ มูลไมต อ เน่ืองกันใชวธิ กี ารเขา ถงึ ขอมลู ดวยการระบุตาํ แหนง เชนโครงสรางขอ มลู แบบ  TREE และ GRAPH เปนตน          ประโยชนของโครงสรา งขอมลู และอลั กอรทิ ึม    ★ เพื่อทําหนาทจ่ี ัดการกบั ขอมูลซง่ึ จะชว ยใหกระบวนการทาํ งานภายในระบบคอมพวิ เตอร เปนไปอยางรวดเรว็ และมีประสทิ ธิภาพมากยิ่งขึน้   ★ การจดั เกบ็ ขอ มูลจาํ นวนในรูปแบบของโครงสรา งขอมลู ทเี่ หมาะสม จะทาํ ใหสามารถนาํ ขอ มูลไปใชไ ดอ ยางมปี ระสทิ ธิภาพ โดยใชท รัพยากรท่มี ีไดอยางคมุ คาทส่ี ุด (ใชพน้ื ท่หี นวย ความจาํ นอยท่สี ดุ ) อกี ทัง้ ยงั ใชเวลาในการประมวลผลนอ ยท่ีสดุ ดว ย สงผลใหคอมพิวเตอร ทาํ งานเรว็ ขนึ้ นั่นเอง  ★ การอา นขอ มลู เพ่ือใชใ นการประมวลผล คอมพวิ เตอรจะอา นขอมูลมาเกบ็ ในหนว ยความ จาํ หลกั (หนว ยความจําแรม) และในกรณที ีข่ อ มลู มีขนาดมากกวาขนาดของหนว ยความจาํ   คอมพิวเตอรจ ะใชโ ครงสรา งขอ มูลและอัลกอริทึมเขา มาชวยในการจัดการกบั ขอ มลู เหลา นัน้ เพ่อื ใหสามารถจัดสรรหนวยความจําไดอยางเหมาะสมและสามารถทํางานไดอยา งตอ เน่อื ง   ★ โครงสรา งแตละชนิด มคี วามสามารถในการจัดการกับขอ มูลทแ่ี ตกตา งกนั          

  อัลกอริทมึ (ALGORITHM)  เปนวิธีการแสดงลําดบั ข้นั ตอนในการทาํ งานหรอื แกไ ขปญหาอยางใดอยา งหนง่ึ เชนการ กาํ หนดขั้นตอนเพ่ือแกปญ หาการจัดเรยี งเอกสารในแฟม ขอมลู หรือการกําหนดอลั กอรทิ มึ ในการ คน หาขอ มูลในแฟม ขอ มูลทงั้ หมด เปน ตน     อลั กอรทิ มึ ท่ีดีควรมคี ุณสมบัติ ดังน ้ี   1. มลี ําดบั ข้ันตอนทํางาน กอน-หลัง ชดั เจน    2. เขา ใจงา ยและไมกํากวม    3. สามารถประมวลผลการทํางานดวยคอมพิวเตอรได    4. การทาํ งานของอัลกอริทึมจะตอ งสน้ิ สุด หลังจากดําเนินงานตามระยะเวลาที่ กําหนด               

  ขน้ั ตอนในการแกปญหา    1.ศึกษาปญหา  ❏ ทําความเขา ใจถอยคําตา ง ๆ ในปญ หา  ❏ แยกแยะใหออกวาสิง่ ทีต่ องการหาคืออะไร  ❏ ขอมลู และเงื่อนไขกําหนดใหมอี ะไรบา ง เพยี งพอท่จี ะหาคาํ ตอบไดหรือไม      2. วิเคราะหป ญหา  1. INPUT  2. OUTPUT  3. PROCESS    3. ออกแบบอลั กอริทึม  1. ภาษาเขียน  2. ผังงาน  3. รหสั เทยี ม    4. วเิ คราะหอ ลั กอรทิ ึม    5. เขียนโปรแกรมคอมพวิ เตอร                 

กระบวนการทํางานของคอมพิวเตอร      1. ขัน้ ตอนการนําขอมูลเขา ---> INPUT    2. ข้ันตอนเกี่ยวกับการประมวลผล  ---> PROCESS    3. ข้นั ตอนการนาํ ขอ มูลออก  ---> OUTPUT        \\                 

    ผงั งาน (FLOWCHART)  เปน เครื่องมอื ทใ่ี ชออกแบบระบบงานดวยสญั ลักษณ ชวยใหม ีโครงสรา งของระบบงานที่เปน ลาํ ดับขั้นตอนและเขาใจไดง า ย    แบง ออกเปน 2 ประเภท  1. ผังงานระบบ (SYSTEM FLOWCHART)  2. ผังงานโปรแกรม (PROGRAM FLOWCHART)    สัญลกั ษณในการเขียนผงั งาน                   

รหสั เทยี ม (PSEUDO CODE)    ➢ใชอ ธบิ ายการทาํ งานของอลั กอรธิ ึม ทําใหไ มตองเขยี นอธบิ ายดวย CODE  ➢ไมขึน้ กับภาษาคอมพวิ เตอรภาษาใดภาษาหนงึ่ อาจเปนภาษาไทยหรือภาษาอืน่ ก็ได แต การใชภ าษาองั กฤษจะสะดวกทีส่ ดุ   ➢เปนคาํ สง่ั ทมี่ ีลักษณะการเขยี นใกลเคียงกับภาษาอังกฤษ แตมโี ครงสรา งเกอื บจะเปน ภาษา โปรแกรม    ​ ตัวอยา งการเขยี นรหสั เทยี ม                   


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