PopFirst() 공개 메소드

Pop First (closest) item
public PopFirst ( ) : ItemPair
리턴 ItemPair
예제 #1
0
        public void InternalSearch(object q, Result candidates, HashSet<int> inserted, IResult res)
        {
            do {
                var start = candidates.PopFirst ();
                if (start.Dist > res.CoveringRadius) {
                    break;
                }
                var adjList = this.Vertices[start.ObjID];

                foreach (var item in adjList) {
                    if (inserted.Add(item.ObjID)) { // true iff it wasn't evaluated
                        var d = this.DB.Dist (this.DB [item.ObjID], q);
                        candidates.Push (item.ObjID, d);
                        res.Push(item.ObjID, d);
                    }
                }
            } while (candidates.Count > 0);
        }