6
เราจะสันนิษฐานได้ว่าการดำเนินการขั้นพื้นฐานกับตัวเลขต้องใช้เวลาคงที่
ตามปกติในขั้นตอนวิธีการที่เราไม่สนใจเกี่ยวกับการเปรียบเทียบนอกจากนี้หรือลบของตัวเลข - เราถือว่าพวกเขาทำงานในเวลา ) ตัวอย่างเช่นเราสมมติว่าสิ่งนี้เมื่อเราบอกว่าการเรียงลำดับแบบอิงการเปรียบเทียบคือO ( n log n )แต่เมื่อตัวเลขมีขนาดใหญ่เกินไปที่จะพอดีกับการลงทะเบียนเรามักจะแสดงมันเป็นอาร์เรย์ดังนั้นการดำเนินการพื้นฐานจำเป็นต้องมีการคำนวณเพิ่มเติมO ( 1 )O(1)O(1)O ( n บันทึกn )O(nlogn)O(n\log n) มีหลักฐานแสดงหรือไม่ว่าการเปรียบเทียบตัวเลขสองตัว (หรือฟังก์ชันทางคณิตศาสตร์แบบดั้งเดิมอื่น ๆ ) สามารถทำได้ใน ? ถ้าไม่ใช่ทำไมเราถึงบอกว่าการเรียงลำดับโดยการเปรียบเทียบนั้นเป็นO ( n log n ) ?O ( 1 )O(1)O(1)O ( n บันทึกn )O(nlogn)O(n\log n) ฉันพบปัญหานี้เมื่อฉันตอบคำถามมากและฉันรู้ว่าอัลกอริทึมของฉันไม่ได้เพราะไม่ช้าก็เร็วผมควรจะจัดการกับใหญ่ int ยังมันไม่ได้หลอกพหุนามอัลกอริทึมเวลามันเป็นPO ( n )O(n)O(n)PPP