C++ 跟踪二叉堆中的项目

C++ Keep track of items in Binary Heap

我正在实施最大二进制堆来解决我有很多服务器的问题。 当有请求发生时,会分配当前容量最大的服务器来服务,这就是使用二叉堆的原因。

我需要知道的是,每当我为请求服务时,分配了哪个服务器。我知道它是堆中的第 0 个元素,但哪个服务器是二进制堆中的第 0 个元素?顺便说一句,服务器编号是整数。例如:我应该可以说 "Server no 33 was allocated".

已经有一段时间了,但我只是创建了一个包含 2 个整数变量的结构。 其中一个变量是我实现二进制堆所依据的值。 另一个是我想跟踪的号码。