スリープソートの時間複雑性は?
2023-08-24 14:39:27
質問
このソートアルゴリズムが与えられたとき、その時間複雑性はどのように表現されますか?
<ストライク 元々はここで発表された (一部アーカイブ) .
#!/bin/bash
function f() {
sleep "$1"
echo "$1"
}
while [ -n "$1" ]
do
f "$1" &
shift
done
wait
example usage:
./sleepsort.bash 5 3 6 3 6 3 1 4 7
どのように解決するのですか?
私は paxdiablo が最も近いと思いますが、正しい理由ではありません。時間の複雑さは、キャッシュ サイズ、メモリの制限、そしてこの場合はプロセス数の制限とスケジューラーの動作など、実際のハードウェア上の問題を無視します。
に基づくと ウィキペディアの「時間の複雑さ」のページ と定義されていれば、実行時の複雑さは判断できない、というのが答えになりますね。
時間の複雑さは、一般的にアルゴリズムによって実行される初歩的な操作の数を数えることによって推定され、初歩的な操作は実行に一定の時間を必要とします。したがって、かかる時間の量とアルゴリズムによって実行される初歩的な操作の数は、最大でも定数ファクターによって異なっています。
では、初歩的な操作にかかる時間があまりにも大きく異なるため、このアルゴリズムの実行時の複雑さについて話すことはできませんので、かかる時間は定数倍以上異なることになります。
関連
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン