オブジェクトの NSMutableSet があります。すべてのオブジェクトは明らかに一意ですが、NSInteger プロパティである同じ.angle値を持つ場合があります。
同じ.angle値を持つオブジェクトが 2 つ以上あるかどうかを確認し、グループ化して配列にする必要があります。
どうやってやるの?
どんなガイダンスでも大歓迎です
オブジェクトの NSMutableSet があります。すべてのオブジェクトは明らかに一意ですが、NSInteger プロパティである同じ.angle値を持つ場合があります。
同じ.angle値を持つオブジェクトが 2 つ以上あるかどうかを確認し、グループ化して配列にする必要があります。
どうやってやるの?
どんなガイダンスでも大歓迎です
データセットの大きさに依存する場合があります。大きい場合は、.angle で並べ替えて、重複を探す必要がある場合があります。簡単な方法は、データセットのコピーを作成して反復し、アイテム N について、同じ .angle を持つすべての N+1 を最後まで見て、見つかった場合は、このコピーセットから削除して出力セットに追加することです。
NSMutableArray の sortUsingFunction:context: メソッドを使用できます。(ソート用ですが、より効率的にタスクを完了できます)。
NSComparisonResult compare(YourClass *firstObject, YourClass *secondObject, void *context) {
if ([firstObject angle] < [secondObject angle])
return NSOrderedAscending;
else if ([firstObject angle] > [secondObject angle])
return NSOrderedDescending;
else
{
//Normally here NSOrderedSame is returned.
//Put your logic stuff here.i.e. storing object for having common angle.
}
}
それが役に立てば幸い。