昨日看了算法导论里讲解的堆排序和优先级队列,于是用C语言写了一个优先级队列的简单实现,该实现的最大特点是队列的元素类型是不确定的,可以对任意数据类型进行操作(甚至是自定义的结构体)。这种处理的核心思想是:队列元素的比较操作与赋值操作都由调用者实现并在优先级队列结构体初始化时传给结构体。具体代码如下:
昨日看了算法导论里讲解的堆排序和优先级队列,于是用C语言写了一个优先级队列的简单实现,该实现的最大特点是队列的元素类型是不确定的,可以对任意数据类型进行操作(甚至是自定义的结构体)。这种处理的核心思想是:队列元素的比较操作与赋值操作都由调用者实现并在优先级队列结构体初始化时传给结构体。具体代码如下: