对于PriorityQueue,我注意到
(1)这个优先队列数据的存储,采用了一个使用向量数组构造的最大堆,实际长度比队例长度多1。
(2)数据插入时,是从m_Heap[1]开始存放的,而不是从m_Heap[0],这跟RecordDownwards,RecordUpwords排序函数
有关系。
(3)这个堆从逻辑上看是一棵二叉树。双亲结点的关键值比子结点关键值大。当然是最小堆时,一定是相反的。
(4)如果需要实际大小与数组大小一致,我想在RecordUpwords比较时应该不是N/2,而是(N-1)/2。
关于游戏人工智能源代码中的PriorityQueue的理解
最新推荐文章于 2024-07-16 22:05:16 发布