Page 25 - โครงสร้างข้อมูลและขั้นตอนวิธี
P. 25

ขั้นต​ อนว​ ิธีก​ ารค​ ้นหา​ข้อมูล 15-15

4. 	วเิ คราะห​ป์ ระสทิ ธิภาพของขนั้ ตอนวิธกี ารคน้ หาแบบบรูทฟอร์ซ
      การว​ ิเคราะห์ป​ ระสิทธิภาพ​นั้น​จะพ​ ิจารณา​จาก​ลักษณะก​ ารค​ ้นหาข​ ้อมูลท​ ่ีไ​ด้ 3 แบบ ดังนี้
      4.1	 กรณ​ีดที​ สี่ ดุ (best case)
      กรณีน​ ี้​ข้อมูลท​ ี่​ต้องการ​ค้นหาอ​ ยู่เ​ป็นส​ มาชิกแ​ รกข​ องอ​ าร์เรย์​เ​ช่น

      ข้อมูล​ที่ต​ ้องการค​ ้นหา คือ 9

      ข้อมูล 9 1 7 5 6 3 12

      การ​ค้นหา​ลักษณะ​นี้จ​ ะ​ใช้ก​ ารเ​ปรียบ​เทียบแ​ ค่​ครั้ง​เดียว​เสมอ ​ดัง​นั้น ป​ ระสิทธิภาพ​เชิงเ​วลาเ​ท่ากับ O(1)
      4.2	 กรณี​แยท​่ ่ีสดุ (worst case)
      กรณีน​ ี้​ข้อมูลท​ ี่​ต้องการค​ ้นหา​ไม่มีอ​ ยู่ใ​น​อาร์เรย์ห​ รือ​เป็น​ข้อมูล​ตัวส​ ุดท้าย​เ​ช่น

      ข้อมูลท​ ี่ต​ ้องการ​ค้นหา คือ 9

      ข้อมูล 1 7 5 6 3 12

      การค​ น้ หาล​ กั ษณะน​ ​จี้ ะใ​ชก​้ ารเ​ปรยี บเ​ทยี บเ​ทา่ กบั จ​ ำ� นวนข​ อ้ มลู ท​ ​ม่ี อี ย​ู่ ดงั น​ น้ั ป​ ระสทิ ธภิ าพเ​ชงิ เ​วลาเ​ทา่ กบั

O(n)  4.3	 กรณี​ท่วั ไป (average case)

      กรณีน​ ี้ข​ ้อมูลท​ ี่ต​ ้องการ​ค้นหา อยู่ต​ �ำ​แหน่ง​ ​ใดๆ ในอ​ าร์เรย์​เช่น

      ข้อมูล​ท่ี​ต้องการค​ ้นหา คือ 6

      ข้อมูล 1 7 5 6 3 12                                         n+1
                                                                   2
      การ​ค้นหา​ลักษณะน​ ี้จ​ ะ​ใช้ก​ ารเ​ปรียบ​เทียบ​โดยเ​ฉล่ีย       ดังน​ ้ัน​ประสิทธิภาพเ​ชิงเ​วลาเ​ท่ากับ O(n)

5. 	การนำ�ข​ ้นั ตอนวิธกี ารคน้ หาแบบบรทู ฟอรซ์ ไป​ประยุกต​์ใชง้​ าน

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

ตวั อย่าง​ที่ 15.4 จง​แสดง​วิธี​การ​ประยุกต์​ใช้​การ​ค้นหา​แบบ​บรูทฟ​อร์ซ ใน​การ​หา​ค่า​มาก​ท่ีสุด​จาก​ข้อมูล​ท้ังหมด​ที่​ไม่​ได​้
เรียง​ล�ำดับ

       ขั้น​ตอนว​ ิธี MaxSearch มี​รายล​ ะเอียด​ดังนี้
       ข้อมูล​เข้าป​ ระกอบ​ด้วย

            อาร์เรย์​ข้อมูล 	 A
            จ�ำนวน​ข้อมูลท​ ั้งหมด	 n
       ข้อมูลท​ ี่​ส่งก​ ลับ
            ค่าท่ีม​ าก​ท่ีสุด​จาก​ข้อมูลท​ ้ังหมด​ใน​อาร์เรย์
   20   21   22   23   24   25   26   27   28   29   30