ความซับซ้อนของอัลกอริทึมคืออะไร?

สารบัญ:

ความซับซ้อนของอัลกอริทึมคืออะไร?
ความซับซ้อนของอัลกอริทึมคืออะไร?
Anonim

ทฤษฎีความซับซ้อนทางคอมพิวเตอร์มุ่งเน้นไปที่การจำแนกปัญหาการคำนวณตามการใช้ทรัพยากร และเชื่อมโยงชั้นเรียนเหล่านี้เข้าด้วยกัน ปัญหาทางคอมพิวเตอร์คืองานที่คอมพิวเตอร์แก้ไข ปัญหาการคำนวณสามารถแก้ไขได้โดยการใช้ขั้นตอนทางคณิตศาสตร์อย่างกลไก เช่น อัลกอริธึม

ความซับซ้อนของอัลกอริทึมหมายความว่าอย่างไร

ความซับซ้อนของอัลกอริทึมคือ การวัดเวลาและ/หรือพื้นที่ที่อัลกอริทึมต้องการสำหรับการป้อนข้อมูลขนาดที่กำหนด (n).

ความซับซ้อนของอัลกอริทึมในโครงสร้างข้อมูลคืออะไร

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

ทำไมความซับซ้อนของอัลกอริทึมจึงสำคัญ

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

ความซับซ้อนของอัลกอริทึมคำนวณอย่างไร

สำหรับลูปใด ๆ เราค้นหารันไทม์ของบล็อกภายในและ คูณด้วยจำนวนครั้งที่โปรแกรม จะวนซ้ำ ลูปทั้งหมดที่เติบโตตามสัดส่วนกับขนาดอินพุตจะมีความซับซ้อนของเวลาเชิงเส้น O(n) หากคุณวนซ้ำเพียงครึ่งอาร์เรย์ นั่นยังคงเป็น O(n).