クラスタに問題があります。私は自分のコースで自己学習を行っており、クラスタリング アルゴリズムを試してみたかったのです。これは私の宿題ではありません。
完全に論理的に見えるこのコードを実行すると、値&p[]
は常に 0 を返すため、ループは無限になります。
for (int i = 0; i < nc; i++)//nc stands for number of clusters
{
int flag = 1;
Particle * temp;
while (flag != 0)
{
temp = &p[rand() % n];
for (int j = 0; j < i; j++)
if (cluster[i].c.find(temp) != cluster[i].c.end())//
{
flag = 0;
break;
}
}
// temp をクラスターにコピー }
誰かが私が犯した間違いを教えてもらえますか? または、他に提案がある場合は、ここに投稿できます。自分以外の新しい視点を持ちたいと思っています。