欢迎光临散文网 会员登陆 & 注册

码牛安卓移动互联网高级开发正式课四期

2023-02-25 12:46 作者:喂喂啊itup01  | 我要投稿

优先级队列用堆实现,只是需要构建初始堆,这个时间复杂度是 O(n) 插入和删除只是 修改了堆顶和堆底,不需要所有的都排序,只是需要再次调整好堆,因此时间复杂度都 是 O(log2n). 假如有 N 个节点,那么高度为 H=logN,最后一层每个父节点最多只需要下调 1 次,倒 数第二层最多只需要下调 2 次,顶点最多需要下调 H 次,而最后一层父节点共有 2^(H- 1) 个,倒数第二层公有 2^(H-2),顶点只有 1(2^0)个,所以总共的时间复杂度为 s = 1 * 2^(H-1) + 2 * 2^(H-2) + ... + (H-1) * 2^1 + H * 2^0 将 H 代入后 s= 2N - 2 - log2(N),近似的时间复杂度就是 O(

码牛安卓移动互联网高级开发正式课四期的评论 (共 条)

分享到微博请遵守国家法律