Page 22 - โครงสร้างข้อมูลและขั้นตอนวิธี
P. 22
15-12 โครงสร้างข้อมูลแ ละข ั้นต อนว ิธี
กิจกรรม 15.1.1
1. การคน้ หาแบบไบลด์ และการคน้ หาแบบฮ ิวรสิ ติก ตา่ งกันอยา่ งไร
2. การจัดเก็บข้อมูลแบบลิงค์ลิสต์มีข้อจำ�กัดสำ�หรับการค้นหา เมื่อเปรียบเทียบกับการจัดเก็บข้อมูล
แบบอาร์เรย์อย่างไร
แนวตอบกจิ กรรม 15.1.1
1. การค้นหาแบบไบลด์เป็นการค้นหาตามทิศทางท่ีกำ�หนด เช่น จากซ้ายสุดไปขวาสุดหรือจากบน
ลงล่าง ส่วนการค้นหาแบบฮิวริสติกเป็นการค้นหาที่คาดเดาหนทางท่ีน่าจะนำ�ไปสู่คำ�ตอบผ่านฟังก์ชันฮิวริสติก
ที่แปลงค่าสถานะของการค้นหาปัจจุบันเป็นตัวเลขท่ีประมาณการว่าเข้าใกล้เป้าหมายท่ีต้องการเพียงใด และใช้
เป็นต วั กำ�หนดทิศทางในก ารค ้นหา
2. การค้นหาข้อมูลบนโครงสร้างลิงค์ลิสต์น้ันต้องค้นหาเป็นลำ�ดับ ไม่สามารถจะเข้าถึงตำ�แหน่งที่
ต้องการไดโ้ ดยตรงเหมอื นกบั อาร์เรย์ เชน่ ถ ้าต ้องการไปยงั ส มาชกิ ต วั ท่ี 5 การจ ัดเก็บแ บบลิงคล์ สิ ตต์ ้องเร่มิ ต ัง้ แต่
สมาชิกตัวแรกแล้วเดินตามลิงค์ไปจนถึงสมาชิกตัวที่ 5 ถ้าเป็นการจัดเก็บในรูปแบบของอาร์เรย์สามารถไปยัง
สมาชิกท ีต่ ้องการได้เลย
เรอื่ งที่ 15.1.2
การคน้ หาข ้อมลู แ บบบรูทฟอ ร์ซ
ส�ำหรับวิทยาการด้านคอมพิวเตอร์แล้วการค้นหาแบบบรูทฟอร์ซ (Bruteforce Search) เป็นวิธีการค้นหาท่ี
ง่ายท่ีสุดในการน�ำไปประยุกต์ใช้ ซึ่งค�ำว่า Brute Force จาก พจนานุกรมแปล อังกฤษ-ไทย อ. สอ เสถบ ุตร หมายถึง
การออกแรงท�ำงานบ างอย่างโดยไม่มีการค �ำนึงถึงรูปแบบ ความงดงาม หรือค วามส ุนทรีย์ใดๆ ซ่ึงค วามหมายโดยร วม
คือ ใช้พ ละก�ำลังไปเรื่อยๆ จนกว่าจะห มดแ รง หรือจ นบ รรลุวัตถุประสงค์ท ี่ต้องการ ในเรื่องข องก ารค ้นหานั้น หมายถ ึง
การค้นหาต้ังแต่สมาชิกตัวแรกเรียงตัวไปเรื่อยๆ จนเจอเป้าหมายท่ีต้องการหรือจนหมดข้อมูล ตัวอย่างแนวคิดเช่น
ก�ำหนดให้ข ้อมูลด ังต่อไปน ้ี
69 100 88 23 24 27 15 12 99 98
ข้อมูลเป้าห มายคือ 99 กระบวนการค ้นหาจะเริ่มต้ังแต่ 69, 100, 88, ... จนถึง 99 เรียงต ามต �ำแหน่งไปเร่ือยๆ