2012-04-05 13 views
0

挿入ソートでは、 によって実装されている間にすでにソートされたリストの要素をシフトすることによって、要素をソート順に挿入する必要があります。 配列を使用する代わりに、double-linked-list、 を使用すると、時間の複雑さはどうなりますか?二重リンクリストを使用した挿入ソートの複雑さ?

時間複雑度O(n^2)になりますか?どうして? n個の要素の挿入を考慮すると、n個の要素の場合、 log(1)+ log(2)+ log(3)+ ..... + log(n) - n回 したがって、複雑さはOあなたが挿入ポイントを見つけるために、リンク構造をナビゲートする必要があるため、リンクされたリストの中へ(nlogn)

+0

'1 + 2 + ... + n'ではなく、' log(1)+ log(2)+ ... + log(n) 'だと思いますか?質問に詳細を記入してください。より有益な回答が得られます。間違いがどこにあるかを説明する可能性が高くなります。 – amit

+0

二重リンクリストを使用する場合、挿入ソートを使用して挿入する場合、要素の挿入にはlog(k)時間がかかります。ここで、kはすでにソートされた要素の数です – Luv

答えて

2

挿入は、時間O(N)ではなく、O(LG N)をとります。

関連する問題