首页 > 解决方案 > 这个的时间复杂度是多少

问题描述

所以我的疑问是在第 2 行,这里我们可以假设 array2 嵌套在 array1 中,从 O(n^2) 或 O(n) 那里的时间复杂度是多少?

function1()
{
  for-loop1{ function2(); } //line 2
}

function2()
{
  for-loop2(); 
}

标签: javaarraysalgorithmtime-complexity

解决方案


您的示例的大 O 表示法很难确定,因为它不运行任何实际功能。您必须了解 Big O 描述了执行/计算的数量与输入大小的关系。

  • 如果您提供的函数对 array1 中的每个元素执行固定数量的操作,而对 array2 中的每个元素执行固定数量的操作,则情况为 O(n)。
  • 如果它为数组中的每个元素再次遍历数组,那么它是 O(n^2),因为将大小加倍会导致计算量增加 4 倍。

推荐阅读