先看“数组、栈”与“链表、队列”的区别
https://blog.youkuaiyun.com/u011331844/article/details/37963367
队列的图解:
堆的图解,是一个优先队列,队列的一种。
堆的贪婪算法几种实现方式:
1、一个单链表存储,插入时遍历链表的最小元素删除并取出。耗费O(N)时间
2、一个单链表存储,插入时对链表进行排序,插入O(N),弹出O(1);
3、使用二叉树,插入和删除都是O(logN);
4、二叉堆(完全二叉树)。常用的堆大致用这种方式实现。