私はそれぞれが0以上のポイントを含むノードのセットを持っています。ノード間に重複したポイントがありますが、各ノードにはそのノードに固有のポイントが含まれている場合があります。例えばJavascriptでほとんどのポイントを持つノードを最も少なく見つける最適な方法
:
- ノードA
- ポイント1
- ポイント2
- ポイント3
- ノードB
- ノードC
- ポイント1
- ポイント4
- ノードD
- ポイント2
等
見つけるアルゴリズム又は方法があります。共同するノードの数が最も少ない最も多くのポイントを特定の限度まで獲得していますか?上記の例では
は、私は4つのユニークなポイントを必要に応じて、私は現在、ノードAとノードC、またはノードAとノードD
になるだろう、私は内のノードのリストをソートすることにより、この問題を解決しています(ノードA、ノードC、ノードD)とポイントを持たないノード(ノードB)を廃棄することによって、降順に並べ替えることができます。私は、ユニークなポイントの定義されたしきい値を打つまで、ユニークなポイントを数える(そして、ノードが見ているものを記録する)ノードのリストを繰り返しています。上記の例では、ノードAとノードCの結果が返されます。
私はJavascriptでこれをやっていますが、私の質問は「問題を解決する方法」です。特定の言語には関係しません。これが間違った投稿場所である場合はお詫び申し上げます。
あなたが持っているすべては、あなたの方法は、私がソートbeforユニークなポイントをカウントして、ソートのユニークなポイント数ですけれども、実行できるよう最善についてのデータである場合。有効性はもちろん、データに依存します。そのデータの生成を管理している場合は、ノードの各ポイントのリストを保持し、ノード内のユニークなポイントの追加カウントを追加することによって、検索を最適化することができます。 – Blindman67
あなたはすでに解決している解決策を見つけました。あなたは何を改善したいですか?優雅?効率?速度?あなたはどのくらいの頻度で操作を行う必要がありますか?あなたのユースケースは何ですか? – Bergi
「ノードAとノードD」から4つのユニークなポイントを取得することについての声明では、おそらく問題に関する何かがあると思われます。ノードAとノードD内のユニークなポイントの数は、ポイント2が重複しているので3です。 –