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

การวัดประสิทธิภาพและความซับซ้อนของขั้นตอนวิธี 2-11

4. 	ลติ ​เทิล​โอแ​ ละ​ลิตเ​ทิล​โอเ​ม​กา

       การ​หา​ขอบเขต​ด้วย​บิ๊ก​โอ​และ​บิ๊ก​โอ​เม​กา เรียก​ว่า เป็นการ​หา​ขอบเขต​แบบ​รัดกุม (asymptotically tight)
เม่ือ​การป​ ระมาณ​มี​อันดับเ​ดียวกัน เช่น 2x2 = O(x2) เป็นการห​ า​ขอบเขต​แบบร​ ัดกุม เพราะเ​ป็นการ​ประมาณท​ ่ี​มีอ​ ันดับ​
เท่า​เทียม​กัน​คือ 2x2 = O(x2) และ x2 = O(2x2) ด้วย แต่ 2x2 = O(x3) ไม่​เป็นการ​หา​ขอบเขต​แบบ​รัดกุม เน่ืองจาก
x3 ≠ O(2x2) จึง​มี​นิยาม​การ​ประมาณ​ขอบเขต​อีก 2 แบบ ท่ี​ใช้​อธิบาย​ขอบเขต​แบบ​ไม่​รัดกุม (not asymptotically
tight) ได้ด​ ัง​ต่อไ​ปน​ ี้

บท​นยิ าม 2.4 ลติ เ​ทิลโ​อ (o)
       ฟังก์ชัน f(x) สามารถ​ประมาณข​ อบเขตบ​ น​แบบ​ไม่ร​ ัดกุม​ได้ด​ ้วยบ​ ิ๊ก​ที​ตา​ของ g(x) เขียน​แทน​ด้วย
       f(x) = o(g(x)) สำ�หรับท​ ุก​ค่าค​ งตัว​บวก c ≥ 0 ถ้า​มี x0 ≥ 0 ที่​ทำ�ให้ |f(x)| < c|g(x)| เมื่อ x ≥ x0

       บท​นิยาม​น้ี​บอก​ได้​ว่า อัตรา​การ​เติบโต​ของ f(x) นอ้ ย​กว่า​อัตรา​การ​เติบโต​ของ g(x) ซ่ึง​เป็น​บท​นิยาม​ท่ี​ต่าง​จา​ก
บ๊ิกโ​อ​ตรง​ที่บ​ ิ๊กโ​ออ​ นุญาต​ให้​มี​อัตรา​การ​เติบโต​ที่เ​ท่า​กันไ​ด้ บิ๊กโ​อ​จึงใ​ช้​บอก​ขอบเขต​บนไ​ด้​ท้ัง​แบบ​รัดกุม​และ​ไม่​รัดกุม แต​่
ลิต​เทิล​โอบ​อก​ได้​เฉพาะ​ขอบเขต​บน​แบบ​ไม่ร​ ัดกุม หรือ​กล่าว​อีก​อย่าง​หน่ึง​ได้​ว่า f(x) = o(g(x)) ถ้า f(x) = O(g(x)) และ
f(x) ≠ Ѳ(g(x))

บทน​ ยิ าม 2.5 ลติ เ​ทลิ โ​อ​เมก​ า (ω)
       ฟังก์ชัน f(x) สามารถ​ประมาณข​ อบเขต​ล่าง​แบบไ​ม่ร​ ัดกุมไ​ด้ด​ ้วย​บิ๊กท​ ี​ตา​ของ g(x) เขียน​แทนด​ ้วย
       f(x) = ω(g(x)) สำ�หรับท​ ุกค​ ่า​คงตัวบ​ วก c ≥ 0 ถ้าม​ ี x0 ≥ 0 ที่ท​ ำ�ให้ |f(x)| > c|g(x)| เมื่อ x ≥ x0

       บท​นิยาม​น้ี​บอก​ได้​ว่า อัตรา​การ​เติบโต​ของ f(x) มากกว่า​อัตรา​การ​เติบโต​ของ g(x) เช่น​เดียว​กัน​บิ๊ก​โอ​เม​กา​ใช​้
บอก​ขอบเขต​ล่าง​ได้​ทั้ง​แบบ​รัดกุม​และ​ไม่​รัดกุม แต่​ลิต​เทิล​โอ​เม​กาบ​อก​ได้​เฉพาะ​ขอบเขต​ล่าง​แบบ​ไม่​รัดกุม หรือ​กล่าว​
อีก​อย่าง​หน่ึง​ว่า f(x) = ω(g(x)) ถ้า f(x) = Ω(g(x)) และ f(x) ≠ Ѳ(g(x))

ตัวอย่าง​ท่ี 2.4 จงห​ า​บ๊ิก​โอ บ๊ิก​โอเ​มก​ า บิ๊กท​ ี​ตา ลิตเ​ทิลโ​อ และล​ ิตเ​ทิล​โอ​เม​กา ของ f(x) = 4x5
วิธที​ �ำ
           ถ้าใ​ห้ x > 0 จะไ​ด้ว​ ่า 3x5 < 4x5 < 5x5
           สังเกตว​ ่า f(x) < 5x5                                                                                     cx5
           ดังน​ ั้น f(x) = O(x5)  จากบ​ ทน​ ิ​ยามบ​ ๊ิกโ​อ  เมื่อ  x0  =  0   และ   c   =  5  จะไ​ด้ว​ ่า  f(x)  ≤         เมื่อ  x  >   x0

           สังเกตว​ ่า 3x5 < f(x)  จากบ​ ทน​ ิย​ าม​บิ๊กโ​อ​เม​กา   เมื่อ  x0  =  0  และ    c  =  3  จะไ​ด้ว​ ่า  cx5    ≤  f(x)   เมื่อ  x   >  x0
           ดังน​ ้ัน f(x) = Ω(x5)
           สังเกต​ว่า 3x5 < 4x5 < 5x5 จากบ​ ท​นิย​ ามบ​ ๊ิกโ​อ​เมก​ า
           จะไ​ด้ว​ ่า 3x5 ≤ f(x) ≤  5x5                                      เม่ือ  x0  =  0  และ   c1     =  3  c2  =  5
           ดังน​ ้ัน f(x) = Ѳ(x5)
                                          เม่ือ  x  >  x0

           สังเกต​ว่า 4x5 < cx6 ส�ำหรับท​ ุกๆ       ค่าค​ งตัวบ​ วก  c     และเ​ม่ือ  x0    =  0  จากบ​ ทน​ ิยาม​ลิตเ​ทิล​โอ
           จะ​ได้​ว่า f(x) < cx6 เมื่อ x > x0
   16   17   18   19   20   21   22   23   24   25   26