前端面试时面试官出的一个笔试题

function getMinNumber ( arr ) {
var min = Infinity;

    for(var i = 0;i<arr.length;i++){
        if(arr[i]<=min){
            min = arr[i];
        }
    }
    return min;
}

这是一个封装的找数组内最小值的一个函数,有没有人可以告知一下这个函数的时间复杂度,以及计算的逻辑和思路呀

O(n),n为数组长度。没特别的,就一个一个比。

这个就一次遍历,从数组的头遍历到尾,每次都判断当前值是否小于等于最小值,如果小于等于,则替代为该值
时间复杂度O(n) n就是数组的长度,因为最差的结果是整个数组遍历完
空间复杂度O(1) 因为所需空间为常量,和数组的长度n不挂钩

如有帮助请采纳回答,谢谢~

额 这不是和选择排序一样吗 遍历一下 最小值给min