ขั้นตอนวิธี (Algorithm) หน่วยการเรียนรู้ที่ 4 ขั้นตอนวิธี (Algorithm)
1. ขั้นตอนวิธีหรืออัลกอริทึม ขันตอนวิธีหรืออัลกอริทึม (Algorithm) เป็นการเขียนลำดับการทำงานอย่างใดอย่างหนึ่งให้สามารถเข้าใจได้ง่ายและทำตามได้สะดวก เช่น ลำดับขั้นตอนในการพับกระดาษแผ่นสีเลียมให้เป็นนกดังภาพ
จากขันตอนวิธีในการพับกระดาษ นำมาขยายขั้นตอนให้ละเอียดขึ้นโดยกำหนดสัญลักษณ์หรือข้อความไวยกรณ์ (Syntax) และอธิบายความหมายไวยกรณ์นั้นไว้ (Semantic) เพื่อให้เกิดความเข้าใจกันในระหว่างผู้ปฏิบัติ ดังตัวอย่าง
2. ขั้นตอนวิธีการค้นหา ข้อมูลที่จัดเก็บในฐานข้อมูลมีหลายรูปแบบ ได้แก่ 1. แบบแถวลำดับ (Array) 2. แบบรายการโยง (Link List) นอกจากนี้ยังข้อมูลในรูปแบบอื่นๆ ขึ้นอยู่กับระบบฐานข้อมูลที่ใช้ การค้นหาข้อมูลทำได้หลายวิธี เช่น การค้นหาแบบเส้นตรง การค้นหาแบบไบนารี เป็นต้น
2.1 การค้นหาแบบเส้นตรง การค้นหาแบบเส้นตรง (Liner Search) เป็นการค้นหาแบบเรียงลำดับข้อมูลตั้งแต่ต้นแฟ้มไปจนกว่าจะพบข้อมูล ประสิทธิภาพในการค้นหาขึ้นอยู่กับตำแหน่งของข้อมูลว่าอยู่ที่ใด ถ้าอยู่ต้นแฟ้มก็พบได้อย่างรวดเร็ว แต่ถ้าอยู่ท้ายแฟ้มก็ต้องใช้เวลาในการค้นหามาก
2.2 การค้นหาแบบไบนารี การค้นหาแบบไบนารี (Binary Search) เป็นการค้นหาโดยการแย่งข้อมูลออกเป็นสองส่วนแล้วเริ่มการค้นหาจากตรงกลาง (Divide and Conquer) โดยนำค่าที่ต้องการไปเปรียบเทียบข้อมูลด้านซ้ายและด้านขวา ถ้าข้อมูลด้านซ้ายน้อยกว่าค่าที่ต้องการก็ไปค้นทางด้านขวา การค้นหาแบบนี้ต้องเรียงลำดับข้อมูลจากน้อยไปมากกว่าก่อน สามารถหาได้เร็วกว่าการค้นแบบเส้นตรง
3. การเรียงลำดับ การเรียงลำดับ (Sorting) เป็นวานสำคัญในการแสดงผล การทำรายงานตามแบบฟอร์มหรือตารางต่างๆ เนื่องจากการจัดเก็บข้อมูลส่วนใหญ่จะไม่เรียงลำดับไว้ก่อนเพราะข้อมูลรับเข้าไม่แน่นอน ข้อมูลที่รับเข้ามาก่อนจะเก็บในฐานข้อมูลก่อนเพื่อความรวดเร็วในการทำงาน ดังนั้นในการแสดงผลจึงต้องเรียงลำดับข้อมูลควบคู่ไปด้วย วิธีเรียงลำดับข้อมูลที่นิยมใช้กันมากมี 2 วิธี คือ 1. Bubble Sort 2. Quick Sort
3.1 Bubble Sort Bubble Sort เป็นขั้นตอนวิธีที่นำค่าตัวเลขตัวที่ 1 ด้านซ้ายไปเปรียบเทียบกับตัวเลขตัวที่อยู่ถัดไปด้านขวา ถ้าตัวเลขตัวที่สองมีค่ามากกว่าตัวเลขให้เลื่อนตัวแรกไปเปรียบเทียบกับตัวถัดไปอีก ถ้าตัวเลขด้านขวามีค่าน้อยกว่าตัวเลขด้านซ้ายให้สลับที่แล้วนำตัวเลขด้านขวาไปเปรียบเทียบกับตัวด้านขวาอีก หากเปรียบเทียบไปจนหมดแถวลำดับแล้วนำตัวเลขด้านขวาไปเปรียบเทียบกับตัวด้านขวาอีก เปรียบเทียบไปจนหมดแถวตัวเลขแล้วย้อนกลับมาด้านซ้ายสุด นำตัวเลขที่สองไปเปรียบเทียบกับตัวเลขด้านขวาอีก ทำไปจนครบตัวเลขทั้งหมด
3.2 Quick Sort Quick Sort เป็นวิธีที่เรียงลำดับที่เร็วกว่าการเรียงลำดับแบบ Bubble Sort โดยการจับคู่ตัวเลขในตำแหน่งหัวและตำแหน่งท้ายซึ่งก็คือตัวแรก และตัวสุดท้ายมาเปรียบเทียบกัน ถ้าตัวเลขตัวสุดท้ายน้อยกว่าตัวแรกให้สลับที่กันแล้วเลื่อนตำแหน่งเข้าหากันพร้อมกับเปรียบเทียบต่อไปดังภาพ
4. การทำงานกับแฟ้มข้อมูล โปรแกรมประยุกต์ส่วนมากจะทำงานโดยอ่านและบันทึกจากหน่วยเก็บ เช่น จากฮาร์ดดิสก์ ข้อมูลในหน่วยเก็บจะถูกบันทึกเป็นแฟ้ม (File) เป็นต้น ดังนั้นภาษาคอมพิวเตอร์ทุกภาษาจึงสามารถทำงานกับแฟ้มได้ แฟ้มข้อมูลมีหลายชนิดได้แก่ แฟ้มชนิดข้อความ (Text File) เป็นแฟ้มที่แบ่งข้อมูลแต่ละชุดออกเป็นแถว แต่ละ แถวมีความยาวที่ต่างกัน และเขตข้อมูลจะถูกคั่นด้วยเครื่องหมายหลัก เช่น จุลภาค (,) แท็บ (Tab) เป็นต้น แฟ้มชนิด Binary File ใช้เก็บข้อมูลหลายชนิด เช่น แฟ้มตารางคำนวณ ข้อมูลภาพ เอกสาร แฟ้มเสียง และอื่นๆ แฟ้มเหล่านี้จะบันทึกข้อมูลเป็นบล็อก ซึ่งผันแปลไปตามขนาดของภาษา และฟังก์ชันในการเข้าถึง
5. กราฟฟิก การแสดงกราฟิก (Graphic) ในคอมพิวเตอร์มีสองประเภทคือ กราฟิกที่สร้างเป็นภาพหยาบๆ ในโปรแกรม เช่น การลากเส้นตรง (Line) สร้างกล่อง (Box) ลากเส้นโค้ง (Curve) วงกลม (Cycle) เป็นต้น คำสั่งเหล่านี้คอมพิวเตอร์สามารถสร้างภาพขึ้นได้อย่างอัตโนมัติ กราฟิกอีกประเภทหนึ่งคือ กราฟิกที่เกิดจากการวาดภาพเป็นวัตถุในเครื่องมือ เช่น ฟอร์ม (Form) เป็นต้น
The End หน่วยการเรียนรู้ที่ 4