()
| 75 | *pq = append(*pq, n) |
| 76 | } |
| 77 | func (pq *priorityQueue) Pop() interface{} { |
| 78 | old := *pq |
| 79 | n := old[len(old)-1] |
| 80 | old[len(old)-1] = nil // avoid mem leak |
| 81 | n.index = -1 |
| 82 | *pq = old[:len(old)-1] |
| 83 | return n |
| 84 | } |
| 85 | func (pq *priorityQueue) update(n *nodeRecord, newF float64) { |
| 86 | n.fScore = newF |
| 87 | heap.Fix(pq, n.index) |