ใครช่วยอธิบายความแตกต่างระหว่างอัลกอริทึมพหุนามเวลาไม่ใช่พหุนามเวลาและเวลาเอกซ์โพเนนเชียล
ตัวอย่างเช่นหากอัลกอริทึมใช้เวลา O (n ^ 2) แล้วจะอยู่ในหมวดหมู่ใด
ใครช่วยอธิบายความแตกต่างระหว่างอัลกอริทึมพหุนามเวลาไม่ใช่พหุนามเวลาและเวลาเอกซ์โพเนนเชียล
ตัวอย่างเช่นหากอัลกอริทึมใช้เวลา O (n ^ 2) แล้วจะอยู่ในหมวดหมู่ใด
คำตอบ:
ตรวจสอบนี้ออก
เอกซ์โปเนนเชียลแย่กว่าพหุนาม
O (n ^ 2) จัดอยู่ในหมวดกำลังสองซึ่งเป็นประเภทของพหุนาม (กรณีพิเศษของเลขชี้กำลังเท่ากับ 2) และดีกว่าเลขชี้กำลัง
เอกเป็นมากยิ่งกว่าพหุนาม ดูว่าฟังก์ชันเติบโตอย่างไร
n = 10 | 100 | 1000
n^2 = 100 | 10000 | 1000000
k^n = k^10 | k^100 | k^1000
k ^ 1000 มีขนาดใหญ่เป็นพิเศษเว้นแต่ k จะเล็กกว่า 1.1 เช่นเดียวกับทุกอนุภาคในจักรวาลจะต้องทำการปฏิบัติการ 100 พันล้านพันล้านต่อวินาทีเป็นเวลาหลายล้านล้านพันล้านพันล้านปีเพื่อให้สำเร็จ
ฉันไม่ได้คำนวณออกมา แต่มันใหญ่มาก
ด้านล่างนี้คือฟังก์ชัน Big-O ทั่วไปในขณะที่วิเคราะห์อัลกอริทึม
(n = ขนาดของอินพุต c = ค่าคงที่)
นี่คือกราฟแบบจำลองที่แสดงถึงความซับซ้อนของ Big-O ของบางฟังก์ชัน
ไชโย :-)
เครดิตกราฟhttp://bigocheatsheet.com/
O (n ^ 2) คือเวลาพหุนาม พหุนามคือ f (n) = n ^ 2 ในทางกลับกัน O (2 ^ n) คือเวลาเอกซ์โพเนนเชียลโดยที่ฟังก์ชันเลขชี้กำลังโดยนัยคือ f (n) = 2 ^ n ความแตกต่างคือว่าฟังก์ชันของ n วาง n ในฐานของการยกกำลังหรือในเลขชี้กำลังเอง
ฟังก์ชันการเติบโตแบบเลขชี้กำลังจะเติบโตเร็วกว่า (ระยะยาว) อย่างมีนัยสำคัญมากกว่าฟังก์ชันพหุนามใด ๆ ดังนั้นความแตกต่างจึงเกี่ยวข้องกับประสิทธิภาพของอัลกอริทึมโดยเฉพาะอย่างยิ่งสำหรับค่าที่มากของ n
เวลาพหุนาม
พหุนามคือผลรวมของคำศัพท์ที่มีลักษณะเหมือนConstant * x^k
เลขชี้กำลังหมายถึงConstant * k^x
(ในทั้งสองกรณี k คือค่าคงที่และ x เป็นตัวแปร)
เวลาดำเนินการของอัลกอริทึมเอกซ์โพเนนเชียลจะเติบโตเร็วกว่าของพหุนามมาก
เอกซ์โพเนนเชียล (คุณมีฟังก์ชันเอกซ์โพเนนเชียลหาก MINIMAL ONE EXPONENT ขึ้นอยู่กับพารามิเตอร์):
พหุนาม (คุณมีฟังก์ชันพหุนามถ้า NO EXPONENT ขึ้นอยู่กับพารามิเตอร์ฟังก์ชันบางอย่าง):
เวลาพหุนาม O (n) ^ k หมายถึงจำนวนการดำเนินการเป็นสัดส่วนกับกำลัง k ของขนาดของอินพุต
เวลาเอกซ์โพเนนเชียล O (k) ^ n หมายถึงจำนวนการดำเนินการเป็นสัดส่วนกับเลขชี้กำลังของขนาดของอินพุต
o (n sequre) เป็นความซับซ้อนของเวลาแบบพหุนามในขณะที่ o (2 ^ n) เป็นความซับซ้อนของเวลาแบบเอ็กซ์โปเนนเชียลถ้า p = np เมื่อเป็นกรณีที่ดีที่สุดในกรณีที่เลวร้ายที่สุด p = np ไม่เท่ากันเนื่องจากเมื่อขนาดอินพุต n เติบโตนานมากหรือตัวปรับขนาดอินพุตเพิ่มขึ้นดังนั้น อีกต่อไปมันจะเป็นกรณีที่เลวร้ายที่สุดและการจัดการดังนั้นอัตราการเติบโตที่ซับซ้อนจึงเพิ่มขึ้นและขึ้นอยู่กับ n ขนาดของอินพุตเมื่ออินพุตมีขนาดเล็กมันจะเป็นแบบพหุนามเมื่อขนาดอินพุตใหญ่และใหญ่ดังนั้น p = np ไม่เท่ากันหมายความว่าอัตราการเติบโตขึ้นอยู่กับขนาดของอินพุต "N ". การเพิ่มประสิทธิภาพ sat กลุ่มและชุดอิสระยังพบในเลขชี้กำลังถึงพหุ