in cassovary-core/src/main/scala/com/twitter/cassovary/graph/tourist/PrevNbrCounter.scala [71:95]
private def topPrevNbrsTill(nodeId: Int, num: Option[Int]): Int2IntArrayMap = {
val result = new Int2IntArrayMap
comparator.setNode(nodeId)
priQ.clear()
val infoMap = infoPerNode(nodeId)
val nodeIterator = infoMap.keySet.iterator
while (nodeIterator.hasNext) {
val nbrId = nodeIterator.next()
priQ += nbrId
}
val size = num match {
case Some(n) => n
case None => priQ.size()
}
while (result.size < size && !priQ.isEmpty) {
val nbrId = priQ.deque()
result.put(nbrId, infoMap(nbrId))
}
result
}