C#使用PriorityQueue

Posted JebediahKerman

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C#使用PriorityQueue相关的知识,希望对你有一定的参考价值。

 

#pragma once
#include<cliext/queue>
#include<cliext/vector>
using namespace cliext;
using namespace System;
using namespace Microsoft::VisualC::StlClr;
namespace ClassLibrary2
{
    public ref class Class1
    {
    public:
        static IPriorityQueue<Object ^, IVector<Object ^> ^> ^PriorityQueue(priority_queue<Object ^>::value_compare ^comp)
        {
            return gcnew priority_queue<Object ^>(comp);
        }
    };
}

 

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using static ClassLibrary2.Class1;
using Microsoft.VisualC.StlClr;

namespace ConsoleApplication2
{
    class Program
    {
        static bool comp1(object o1,object o2)
        {
            return (int)o1 < (int)o2;
        }
        static void Main(string[] args)
        {
            Random rnd = new Random();
            IPriorityQueue<object, IVector<object>> IPri = PriorityQueue(comp1);
            for (int i = 0; i < 10; i++)
                IPri.push(rnd.Next());
            for(int i=0;i<10;i++)
            {
                Console.Write(IPri.top_item.ToString() + " ");
                IPri.pop();
            }
            Console.ReadKey();
        }
    }
}

 

以上是关于C#使用PriorityQueue的主要内容,如果未能解决你的问题,请参考以下文章

C#使用PriorityQueue

c#代码片段快速构建代码

C# 最有用的(自定义)代码片段是啥? [关闭]

VS2015使用技巧 打开代码片段C#部分

如何为 XSLT 代码片段配置 CruiseControl 的 C# 版本?

此 Canon SDK C++ 代码片段的等效 C# 代码是啥?