2013-03-02 141 views
0

可以說我在2D畫布上有許多點。推測有一種方法可以避免搜索最近一個座標到特定座標集(例如鼠標點擊)的所有座標。在那兒?尋找最近點的有效方法?

謝謝。

+0

通常可以通過例如用B樹索引點來實現。但是我不知道你使用的畫布有什麼樣的特徵,也許它具有內置的功能。它是HTML5畫布嗎? – 2013-03-02 14:54:54

+1

你有沒有檢查http://stackoverflow.com/questions/1901139/closest-point-to-a-givenpoint – 2013-03-02 15:00:27

回答

0

最好的算法取決於您希望比較的點數,這些點移動和搜索的頻率,重新索引和搜索的重要程度以及您使用的語言的重要程度。正如@瑟瓦納斯指出的那樣,可能會有語言或圖書館的電話可以提供幫助。在所有可能的情況下,quad tree將是最容易理解的,同時儘可能保持高效。 @Shiva Kumar提供了一整套優秀的可能性(儘管還有更多的方法)。你應該做一次谷歌搜索,看看問題是如何解決你編程的語言和環境的。