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

15-32 โครงสร้าง​ข้อมูล​และข​ ั้น​ตอน​วิธี

  กิจกรรม 15.1.4
         1. 	 เพราะเหตใุ ดการค​ น้ หาแ​ บบท​ วิภาคจ​ ึง​ไม่​เหมาะส​ มก​ ับข​ ้อมลู ท​ ​ไี่ ม่​ไดเ้​รยี ง​ล�ำ ดับ	
         2. 	 ฟังก์ชัน BinarySearch ค้นหา​ข้อมูล​ท่ี​มี​การ​เรียง​ลำ�ดับ​จาก​น้อย​ไป​มาก ถ้า​ต้องการ​ประยุกต์​ใช้

  ฟงั กช์ นั BinarySearch กบั ข​ อ้ มลู ท​ ม​ี่ ก​ี ารเ​รยี งล​ �ำ ดบั จ​ ากม​ ากไ​ปน​ อ้ ย ตอ้ งม​ ก​ี ารเ​ปลย่ี นแปลงฟ​ งั กช์ นั BinarySearch
  อย่างไร
  แนวต​ อบ​กจิ กรรม 15.1.4

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

         2. 	 เปลีย่ นบ​ รรทดั ท​ ี่ 9 จาก x < A[pos] เปน็ x > A[pos]
   37   38   39   40   41   42   43   44   45   46   47