Esempio n. 1
0
            public bool MoveNext()
            {
                while (_tmp.Count > 0)
                {
                    var minKey = _tmp.MinKey();
                    var min = _tmp.RemoveMin();
                    int child1, child2;
                    _tree.GetChildren(min, out child1, out child2);
                    if (child1 == -1)
                    {
                        Current = new NearestNodeResult(min, minKey, _tree.GetUserData <object>(min));
                        return(true);
                    }

                    Insert(child1);
                    Insert(child2);
                }

                Current = default(NearestNodeResult);
                return(false);
            }