当前位置: 首页>>代码示例>>Python>>正文


Python PriorityQueue._put方法代码示例

本文整理汇总了Python中queue.PriorityQueue._put方法的典型用法代码示例。如果您正苦于以下问题:Python PriorityQueue._put方法的具体用法?Python PriorityQueue._put怎么用?Python PriorityQueue._put使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在queue.PriorityQueue的用法示例。


在下文中一共展示了PriorityQueue._put方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: __init__

# 需要导入模块: from queue import PriorityQueue [as 别名]
# 或者: from queue.PriorityQueue import _put [as 别名]
    def __init__(self,chars):
        q = PriorityQueue()
        counter = itertools.count() # unique sequence count
        for freq,char in chars:
            q._put((freq,(next(counter),HuffNode(freq=freq,val=char))))

        for _ in range(len(chars)-1):
            left = q._get()
            right = q._get()
            freq = left[0] + right[0]
            z = HuffNode(freq=freq,lchild=left[1][1],rchild=right[1][1])
            z.lchild.prnt = z.rchild.prnt = z
            q._put((freq,(next(counter),z)))

        self.root = q._get()[1][1]
        self.codes_dict = self._codes()
开发者ID:makslevental,项目名称:clrs,代码行数:18,代码来源:huffman.py

示例2: __init__

# 需要导入模块: from queue import PriorityQueue [as 别名]
# 或者: from queue.PriorityQueue import _put [as 别名]
class Dijkstra:
    def __init__(self,gameboard):
        self.grid = [[None for x in range(gameboard.height)] for x in range(gameboard.width)]
        self.run()
        self.qset = queue()
        self.pqueue = PriorityQueue()

    def run(self, gameboard,x,y):
        print(gameboard.height*gameboard.width)
        for i in range (gameboard.height):
            for j in range (gameboard.width):
                self.grid[i][j] = grid(i,j,999)
                self.pqueue._put(self.grid[i][j])
        self.grid[x][y]=0
        while self.pqueue.empty():
            lilgrid = self.pqueue._get()
            
        pass
开发者ID:Qmyang,项目名称:orbis,代码行数:20,代码来源:Dijkstra.py


注:本文中的queue.PriorityQueue._put方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。