雖然大多數問題都是基於相似性(pidgeonholes)對節點進行分組,但我想根據它們的接近度對節點進行分組。高效分組節點?
我有一個大型密集的節點集合 - 潛在的數百萬。屏幕上他們佔用一定的空間,所以他們可以被認爲是一個大小。
我想要做的是將這些節點有效地分組爲單個包含節點,無論是在處理時間還是在爲每個容器收集更多節點。
我目前的嘗試要麼太慢,要麼不工作,但都是基於我想到的同一個解決方案:通過取一個節點計算許多可能的容器,並且它是隨機的周圍節點,分組,然後選擇最有效的容器。
你的想法是什麼,並不是專門用於任何語言,但我將爲此使用PHP或JavaScript。
Edit
我忘了提,節點將進行流的,所以它需要承擔無限節點,將它們放入容器,因爲他們來,創造新的容器,甚至根據需要進行刪除,高達數百萬容器。那將是最理想的。
我一直在使用術語羣集在我自己的代碼,這正是我想要的。感謝這些算法。我會看看他們,讓你知道他們是否合適的解決方案。 – DanRedux 2012-04-10 04:26:28
看着這些算法,我設計了一個適用於我的算法,它是它們的混合。我將隨機放置我的「k」個容器,找到每個節點最近的容器,指這些組,並將容器移動到那裏,重複幾次。我需要改進的部分是循環。一些節點將超出範圍,我想知道是否有更快的方法來循環遍歷其他節點範圍內的節點。它將是密集的,但可能有非常稀疏的區域,並且節點超出範圍。 – DanRedux 2012-04-10 04:33:39
你讀過關於DBSCAN的文章了嗎?這似乎是你想要的。 – Basti 2012-04-10 04:35:37