メソッドは次のとおりです。
List<Book> books = new List<Book>();
public List<Book> Shoot()
{
foreach(var b in books)
{
bool find = true;
foreach(var otherb in books)
{
if(otherb != b && otherb.Author == b.Author)
{
find = false;
}
}
if(find)
{
yield return b;
}
}
}
通常、時間の複雑さは O(books.Count^2) ですが、外側のループに if(find) ステートメントがあり、ループ時間が変わる可能性があります。
だから私の質問は:
- この方法の時間計算量はどれくらいですか?
- どのように計算しましたか?
あなたの答えをオンラインで待っています。
前もって感謝します。