时间复杂度:使用大写符号

时间:2016-05-04 14:04:57

标签: java big-o

我是java开发和时间复杂性的新手,我正在尝试计算这段代码的总体时间复杂度

  void merge (char s[], char t[], char result[]){
  int i, j, k;                          //line 1
  for (i = j = k = 0; (s[i] != ’\0’) && t[j] != ’\0’); k++){  //line2                                            // line 3
      if (s[i] <= t[j])             // line 4
       result[k] = s[i++];          // line 5
      else                          // line 6
       result[k] = t[j++];          // line 7
   }                                // line 8
   for (; s[i] != ’\0’; i++ ) {     // line 9                               
     result[k] = s[i];              // line 11
   }                                // line 12
   for (; t[j] != ’\0’; j++ ){       //line 13                              
    result[k] = t[j];               // line 15
   }                                // line 16
     result[k] = 0;                 // line 17
 }

1 个答案:

答案 0 :(得分:1)

我认为我说的是正确的,因为没有嵌套循环且没有提前终止标准,所以上面的算法是O(n)