Python 3.x 多个关键优先级的数据结构
我一直在尝试为我的程序设计一个类似堆的数据结构。 在这个程序中,我有节点对象。节点有两个数字字段:时间和方向(两个自然数,我们可以假设相同的时间意味着不同的方向)。我在节点中定义了:Python 3.x 多个关键优先级的数据结构,python-3.x,data-structures,Python 3.x,Data Structures,我一直在尝试为我的程序设计一个类似堆的数据结构。 在这个程序中,我有节点对象。节点有两个数字字段:时间和方向(两个自然数,我们可以假设相同的时间意味着不同的方向)。我在节点中定义了: def\uu lt\uuu(自身、其他): 如果self.time
def\uu lt\uuu(自身、其他):
如果self.time
数据结构将获得一个排序依据的函数(获取一个节点,返回一个值)。
pop操作应:
- 如果节点N的值不同,则返回具有最小f(N)的节点N
- 如果存在多个最小值,则返回具有最小时间的最小值(如果它是不同的)
- 如果时间上存在多个最小值,则返回方向上的最小值