30
O (log n) หมายถึงอะไรอย่างแน่นอน
ฉันกำลังเรียนรู้เกี่ยวกับเวลาทำงานของ Big O Notation และเวลาที่ถูกตัดจำหน่าย ฉันเข้าใจความคิดของเวลาเชิงเส้นO (n)ซึ่งหมายความว่าขนาดของอินพุตมีผลต่อการเติบโตของอัลกอริทึมตามสัดส่วน ... และเช่นเดียวกันสำหรับตัวอย่างเช่นเวลากำลังสองO (n 2 )ฯลฯ อัลกอริธึมที่สิบเอ็ด เช่นเครื่องปั่นไฟที่มีการเปลี่ยนแปลงด้วยเวลาO (n!)ที่เติบโตโดยแฟกทอเรียล ตัวอย่างเช่นฟังก์ชันต่อไปนี้คือO (n)เนื่องจากอัลกอริทึมเติบโตตามสัดส่วนของอินพุตn : f(int n) { int i; for (i = 0; i < n; ++i) printf("%d", i); } ในทำนองเดียวกันหากมีการวนซ้ำซ้อนกันเวลาจะเป็น O (n 2 ) แต่O (log n)คืออะไรกันแน่? ยกตัวอย่างเช่นมันหมายความว่าอะไรที่จะบอกว่าความสูงของต้นไม้ไบนารีสมบูรณ์คือO (log n) ? ฉันรู้ (อาจไม่ได้อยู่ในรายละเอียดที่ดี) สิ่งที่ลอการิทึมคือในแง่ที่ว่า: log …
2139
time-complexity
big-o