摘要: 堆的基础知识: 入堆push,复杂度O(logn) 出堆pop,复杂度O(1) 常见算法应用: 1.数组第k大元素; 2.查找中位数 1.求数组第k大元素 用快排时间复杂度O(nlogn),这里用堆。由于堆规模最大为k,故每次push复杂度O(logk),n次为O(nlogk),优于快排。 2.中位 阅读全文
posted @ 2019-01-15 22:04 COOHAHAHA 阅读(116) 评论(0) 推荐(0) 编辑
摘要: 常见的栈与队列算法题 1.使用队列实现栈 2.使用栈实现队列 3.包含最小值函数的栈 4.合法的出栈序列 5.简单计算器 1.队列实现栈 主要是push函数的编写。x进队后,让之前的元素 一 一 出队再入队。 2.栈实现队列 3.最小值栈 设计一个支持 push,pop,top 操作,并能在常数时间 阅读全文
posted @ 2019-01-15 02:32 COOHAHAHA 阅读(181) 评论(0) 推荐(0) 编辑