当前位置: 首页>>代码示例>>C#>>正文


C# Heap.Clear方法代码示例

本文整理汇总了C#中Heap.Clear方法的典型用法代码示例。如果您正苦于以下问题:C# Heap.Clear方法的具体用法?C# Heap.Clear怎么用?C# Heap.Clear使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Heap的用法示例。


在下文中一共展示了Heap.Clear方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: ClearTest

        public void ClearTest()
        {
            Heap<int> actual = new Heap<int> {12, 3, 21, 0};

            actual.Clear();

            Assert.AreEqual(0, actual.Count);
        }
开发者ID:taoxiease,项目名称:asegrp,代码行数:8,代码来源:HeapTest.cs

示例2: ClearExample

        public void ClearExample()
        {
            var heap = new Heap<string>(HeapType.Minimum) {"cat", "dog", "canary"};

            // There should be 3 items in the heap.
            Assert.AreEqual(3, heap.Count);

            // Clear the heap
            heap.Clear();

            // The heap should be empty.
            Assert.AreEqual(0, heap.Count);

            // No cat here..
            Assert.IsFalse(heap.Contains("cat"));
        }
开发者ID:havok,项目名称:ngenerics,代码行数:16,代码来源:HeapExamples.cs

示例3: Simple

        public void Simple()
        {
            var heap = new Heap<int>(HeapType.Minimum);

            for (var i = 20; i > 0; i--)
            {
                heap.Add(i);
                Assert.AreEqual(heap.Root, i);
            }

            Assert.IsFalse(heap.IsEmpty);
            Assert.AreEqual(heap.Count, 20);

            heap.Clear();

            Assert.AreEqual(heap.Count, 0);
            Assert.IsTrue(heap.IsEmpty);
        }
开发者ID:GTuritto,项目名称:ngenerics,代码行数:18,代码来源:Clear.cs

示例4: findPath

 //uses A* to find path
 private void findPath(GridNode start, GridNode end)
 {
     Stopwatch watch = new Stopwatch();
     watch.Start();
     Heap<GridNode> heap = new Heap<GridNode>(gameGrid.gridHeight*gameGrid.gridLength);
     Dictionary<GridNode,int> costSoFar = new Dictionary<GridNode,int>();
     Dictionary<GridNode,GridNode> cameFrom = new Dictionary<GridNode,GridNode>();
     HashSet<GridNode> closed = new HashSet<GridNode>();
     heap.insert (start);
     costSoFar.Add(start, 0);
     while(heap.Count > 0){
         GridNode current = heap.extract();
         closed.Add (current);
         if(current.Equals(end)){
             retraceRoute(start,current,cameFrom);
             heap.Clear ();
             watch.Stop();
             print (watch.ElapsedMilliseconds);
         }else{
             List<GridNode> list = gameGrid.getNeighbours(current);
             foreach(GridNode node in list){
                 if(!node.isBlock && !closed.Contains(node)){
                     int cost = costSoFar[current] + gameGrid.getDistanceBetween(current,node);
                     if(!costSoFar.ContainsKey (node) || cost < costSoFar[node]){
                         costSoFar.Remove (node);
                         costSoFar.Add (node,cost);
                         node.score = cost + gameGrid.getHeuristic(node, end);
                         heap.insert (node);
                         cameFrom.Remove (node);
                         cameFrom.Add (node, current);
                     }
                 }
             }
         }
     }
     explored = new HashSet<GridNode>(closed);
 }
开发者ID:kyawt2196,项目名称:RTSEngine,代码行数:38,代码来源:UnitMovement.cs

示例5: IsEmptyExample

        public void IsEmptyExample()
        {
            var heap = new Heap<string>(HeapType.Minimum);

            // Heap will be empty initially
            Assert.IsTrue(heap.IsEmpty);

            heap.Add("cat");

            // Heap will be not be empty when an item is added
            Assert.IsFalse(heap.IsEmpty);

            heap.Clear();

            // Heap will be empty when items are cleared
            Assert.IsTrue(heap.IsEmpty);
        }
开发者ID:havok,项目名称:ngenerics,代码行数:17,代码来源:HeapExamples.cs

示例6: ClearPUT

 public void ClearPUT([PexAssumeNotNull]List<int> input)
 {
     Heap<int> actual = new Heap<int> (input);
     actual.Clear();
     PexAssert.AreEqual(0, actual.Count);
 }
开发者ID:taoxiease,项目名称:asegrp,代码行数:6,代码来源:HeapTest.cs


注:本文中的Heap.Clear方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。