我有算法,它以数组作为参数,并返回其最大值.
find_max(as) :=
max = as[0]
for i = 1 ... len(as) {
if max < as[i] then max = as[i]
}
return max
Run Code Online (Sandbox Code Playgroud)
我的问题是:假设数组最初处于(统一)随机排列并且其所有元素都是不同的,那么max变量更新的预期次数是多少(忽略初始赋值).
例如,如果as = [1, 3, 2],那么更新的次数max将为1(当读取值3时).