学习笔记-用堆实现优先队列(Python)

一、堆 1、堆是一棵完全二叉树,这棵二叉树需要满足堆序:任何分支结点(即除去叶结点所剩余的结点)的值都大于等于(或小于等于)其左右子结点的值。 2、一般用列表来表示堆(Python中的列表下标从0开始),i结点的父结点位置为(i-1)//2(取整),i结点的左右子结点位置为2*i+1和2*i+2。 3、如果堆序是小元素优先,则构造出来的称为‘小顶堆’(小元素在上);如果堆序是大元素优先,则构造出来
相关文章
相关标签/搜索