源码解析C#中PriorityQueue(优先级队列)的实现_c# priorityqueue-CSDN博客

网站介绍:文章浏览阅读1k次,点赞4次,收藏3次。前言前段时间看到有大佬对.net 6.0新出的PriorityQueue(优先级队列)数据结构做了解析,但是没有源码分析,所以本着探究源码的心态,看了看并分享出来。它不像普通队列先进先出(FIFO),而是根据优先级出队。ps:读者多注意代码的注释。D叉树的认识(d-ary heap)首先我们在表示一个堆(大顶堆或小顶堆)的时候,实际上是通过一个一维数组来维护一个二叉树(d=2,d表示每个父节点最多有几个子节点),首先看下图的二叉树,数字代表索引:任意一个节点的父节点的索引为:(inde_c# priorityqueue