这个函数是 O(n) 还是 O(log(n)) 时间复杂度。
function reverse(array) {
for (var i = 0, j = array.length - 1; i < j; i++, j--) {
var temp = array[i];
array[i] = array[j];
array[j] = temp;
}
return array;
}
Run Code Online (Sandbox Code Playgroud)
乍一看,它似乎对输入进行了 n/2 次迭代。但是,仔细想想,实际的低级操作数更接近于 2n。