我在使用以下参数创建插入函数时遇到问题。插入函数应该接受一个优先级队列和一个元素并使用优先级规则插入它 -
优先级队列将接受一系列任务,并根据它们的重要性对它们进行排序。每个任务都有一个从 10(最高优先级)到 1(最低优先级)的整数优先级。如果两个任务具有相同的优先级,则顺序应基于它们插入优先级队列的顺序(较早的第一个)。
所以,截至目前,我已经创建了以下代码来初始化一些需要的东西......
class Tasks():
__slots__ = ('name', 'priority')
def __init__(bval):
bval.name = myName
bval.priority = myPriority
return bval
class PriorityQueue():
__slots__ = ('queue', 'element')
def __init__(aval):
aval.queue = queue
aval.element = element
return aval
我正在尝试编写的代码是 insert(element, queue): 它应该使用优先级队列插入元素。同样,myPriorty 是从 1 到 10 的整数。
同样,我可以执行以下操作以确保创建从 1 到 10 的优先级...
def __init__(bval , myPriority = 10):
bval.priority = myPriority
bval.pq = [[] for priority in range(bval.myPriority)]
这样我就可以用 bval.pq 替换插入任务中的 myPriority