ICollection をそれ自体と比較する最も安価な方法はありますか。
これが私のコードです:
public IEnumerable<Pet> speciesChecker()
{
foreach (Pet pet in _pets)
{
bool wantedSpecies = true;
foreach (Pet pet2 in _pets)
{
if (pet2 != pet && pet.Species == pet2.Species)
{
wantedSpecies = false;
break;
}
}
if (wantedSpecies) yield return pet;
}
}
私のコードの時間の複雑さは何ですか。私が知っているのは、それが O(N^2) 未満であることだけです。内側の foreach ループから「ブレーク」を削除すると、時間の複雑さは O(N^2) になります。 . 間違っている場合は修正してください。