1. 程式人生 > >最好,最壞,平均,均攤時間複雜度

最好,最壞,平均,均攤時間複雜度

// n 表示陣列 array 的長度
int find(int[] array, int n, int x) {
  int i = 0;
  int pos = -1;
  for (; i < n; ++i) {
    if (array[i] == x) pos = i;
  }
  return pos;
}

時間複雜度是O(n)

// n 表示陣列 array 的長度
int find(int[] array, int n, int x) {
  int i = 0;
  int pos = -1;
  for (; i < n; ++i) {
    if (array[i] == x) {
       pos = i;
       break;
    }
  }
  return pos;
}

最好是O(1),最壞是O(n)

平均時間複雜度如圖: