Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> การเขียนโปรแกรม

ความแตกต่างระหว่าง Big-O และ Little-O Notation


Big-O Notation: e ∈ O(g)

หมายความว่า:

  • มี ค่าคงที่ l > 0 อย่างน้อยหนึ่งค่า ที่ทำให้มีค่าคงที่ a ให้อสมการ e(x) < l·g(x) เป็นจริง สำหรับทุก x > a

Little-O Notation: e ∈ o(g)

หมายความว่า:

  • สำหรับทุกค่าคงที่ l > 0 มีค่าคงที่ a ให้อสมการ e(x) < k·g(x) เป็นจริง สำหรับทุก x > a

ความแตกต่างสำคัญ

  • e ∈ O(g) หมายถึง การเติบโตแบบ渐近 (Asymptotic Growth) ของ e ไม่เร็วกว่า g
  • e ∈ o(g) หมายถึง การเติบโตแบบ渐近ของ e ช้ากว่าอย่างเคร่งครัด (Strictly Slower) g
  • เหมือนความสัมพันธ์ ≤ เทียบกับ <

ตัวอย่าง

x² ∈ O(x²)      // จริง เพราะเติบโตเท่ากัน
x² ∉ o(x²)      // เท็จ เพราะไม่ได้ช้ากว่าอย่างเคร่งครัด
x² ∈ o(x³)      // จริง เพราะ x² เติบโตช้ากว่า x³ อย่างเคร่งครัด