1. 原地建立一个最小堆(保证堆顶最小):O(n) 2. 每次pop出一个元素和上一个比较,进行置0操作:pop一次O(logn),n个数一共pop n次,共计O(nlogn) 总计O(n+nlogn)=O(nlogn) 这个应该满足要求吧,也没有二重循环,就是需要手撕一个数组堆化
1 2

相关推荐

不愿透露姓名的神秘牛友
10-24 12:13
深信服 售前产品经理 17k*12 本科其他
点赞 评论 收藏
分享
牛客网
牛客企业服务