数据结构与算法预习知识

请问这两道题这么做呀,没太明白,希望可以得到大家的帮助,谢谢大家了

img


img

第一个是O(n)
第二个是O(logn)

算法复杂度,一般是描述程序主体执行次数和数据规模 n 的关系。第一题里 k++是主体,执行了 n/2 次,所以和 n 的关系是线性,大O表示法要去掉系数,表示为O(n)。第二题 x=2*x 是主体,执行了log(n/2) 次,去掉系数,表示为O(logn)

不知道你这个问题是否已经解决, 如果还没有解决的话:

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^