大佬教程收集整理的这篇文章主要介绍了algorithm – swift中的优先级队列,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
话虽这么说,有人能指出我正确的方向吗?
目前我的想法如下:
写一个将保存优先级数组的类.在这个类中,将有一个接收值的方法,将其添加到优先级数组,然后根据优先级(在这种情况下,距离)对其进行排序.还将有一个get函数,它返回数组中最高优先级的项.
我想知道在理解优先级队列时我是否接近或离开了.
谢谢.
编辑:
到目前为止这是我的代码.似乎太短暂和残酷……我必须在概念方面遗漏一些东西.
var priorityQueue = Dictionary<String,Int>() var firstElement: String = "" func push(name: String,distance: int) { priorityQueue[name] = distance var myArr = Array(priorityQueue.keys) var sortedKeys = sort(myArr) { var obj1 = self.priorityQueue[$0] // get obj associated w/ key 1 var obj2 = self.priorityQueue[$1] // get obj associated w/ key 2 return obj1 > obj2 } firstElement = myArr[0] var tempPriorityQueue = Dictionary<String,Int>() for val in myArr { tempPriorityQueue[val] = priorityQueue[val] } priorityQueue = tempPriorityQueue } func pop() -> String { priorityQueue.removeValueForKey(firstElement) }
以上是大佬教程为你收集整理的algorithm – swift中的优先级队列全部内容,希望文章能够帮你解决algorithm – swift中的优先级队列所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。