記事ディレクトリ
時間と空間の複雑さの分析 – 選択ソート アルゴリズム
だいたい
セレクションソートアルゴリズムとは?
選択ソート アルゴリズムは、各数値をそれに続くすべての数値と比較し、最大または最小の数値を現在の位置に配置するアルゴリズムです。
コード部分
public class select {
public static void main(String[] args) {
int[] arr = {79,3213,3,5,45,65};
selectfFunction(arr);
for (int i = 0; i < arr.length; i++) {
System.out.println(arr[i]);
}
}
public static void selectfFunction(int[] arr) {
for (int i = 0; i < arr.length; i++) {
for (int j = i + 1; j < arr.length; j++) {
if (arr[j] < arr[i]) {
int temp = arr[j];
arr[j] = arr[i];
arr[i] = temp;
}
}
}
}
}
それの時間複雑度分析と空間複雑度分析
最初に時間の複雑さについて話しましょう。
時間の複雑さに影響を与えるのは、これらの 2 つのfor
ループです。
for (int i = 0; i < arr.length; i++) {
for (int j = i + 1; j < arr.length; j++) {
}
}
}
最初の for ループは時間を実行し、その内部にループをn
ネストするため、時間の計算量は O( n 2 n^{2}n-1
n(n-1)
n2 )
空間の複雑さについて話しましょう
スペースの複雑さ 作成された変数は、temp
スペースの複雑さが O(1) であるためです。