คำถามติดแท็ก computer-vs-human

14
เหตุใดฉันจึงดูกราฟและค้นหาจุดที่ใกล้ที่สุดไปยังอีกจุดหนึ่งในทันที แต่ใช้เวลา O (n) ผ่านการเขียนโปรแกรม
ให้ฉันอธิบาย: ได้รับ scatterplot ของจำนวนจุดที่กำหนด n หากฉันต้องการค้นหาจุดที่ใกล้ที่สุดไปยังจุดใด ๆ ในพล็อตทางจิตใจฉันสามารถละเว้นจุดส่วนใหญ่ในกราฟได้ทันทีโดย จำกัด ทางเลือกของฉันให้แคบลงเรื่อย ๆ . แต่ในการเขียนโปรแกรมได้รับชุดของจุด n เพื่อที่จะหาจุดที่ใกล้ที่สุดเพื่อคนใดคนหนึ่งจะต้องมีการตรวจสอบทุกจุดอื่น ๆ ซึ่งเป็นเวลาO ( n )O(n){\cal O}(n) ฉันเดาว่าภาพที่เห็นด้วยตาของกราฟน่าจะเท่ากับโครงสร้างข้อมูลบางอย่างที่ฉันไม่สามารถเข้าใจได้ เพราะด้วยการเขียนโปรแกรมโดยการแปลงคะแนนเป็นวิธีการที่มีโครงสร้างมากขึ้นเช่น quadtree เราสามารถหาจุดที่ใกล้ที่สุดไปยังจุดในในเวลาหรือ ammortizedเวลาn k ⋅ บันทึก( n ) O ( บันทึกn )kkknnnk ⋅ บันทึก( n )k⋅log⁡(n)k\cdot\log(n)O (บันทึกn )O(log⁡n){\cal O}(\log n) แต่ยังไม่มีใครรู้อัลกอรึทึมที่ถูกทำให้เป็นด่าง (ที่ฉันหาได้) สำหรับการหาจุดหลังจากปรับโครงสร้างข้อมูลO ( 1 )O(1){\cal O}(1) …
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.