Algorithm 以下代码的复杂度为O(n),但如果arr[i]<;arr[j]更改为arr[i]<;=arr[j],复杂性仍然保持不变吗? void fun(int n,int arr[]) { int i=0,j=0; 对于(;i

Algorithm 以下代码的复杂度为O(n),但如果arr[i]<;arr[j]更改为arr[i]<;=arr[j],复杂性仍然保持不变吗? void fun(int n,int arr[]) { int i=0,j=0; 对于(;i,algorithm,performance,loops,time-complexity,big-o,Algorithm,Performance,Loops,Time Complexity,Big O,如果将arr[i]

如果将arr[i]无论是
arr[i]
还是
arr[i],两个答案都具有相同的运行时间
O(n)
void fun(int n, int arr[])
{
    int i = 0, j = 0;
    for(; i < n; ++i)
        while(j < n && arr[i] < arr[j])
            j++;
}