すみません、先程の質問に誤りがありました。そのため、私が望んでいた答えが得られませんでした。
先生は、何かを 2 で割るたびに、実行時間は log n になる可能性が高いと教えてくれました。たとえば、配列を 2 つに分割すると、配列の 1 つをトラバースするたびに、実行時間は log n になります。ただし、LinkedList を使用すると、誤解されやすいケースに遭遇する可能性があります。たとえば、ランタイムを n 未満にするために、先頭または末尾のいずれかから開始して、リストの n 番目の要素を別の要素に設定するアルゴリズムがある場合があります。論理的には、実行時間は log n になると考えるかもしれませんが、そうではありません。何故ですか?そして、それをどのように判断しますか?
ログ n のランタイムを取得するために絶対に分割する必要がありますか? ループの最大実行時間が n/2 の場合、n の実行時間を言うのは論理的に意味がないと思います。