我有以下 Java 代码,并希望在 C# 中实现相同的目标。请建议
PriorityQueue<Integer> pQ= new PriorityQueue<Integer>((x,y)->Integer.compare(y, x));
Run Code Online (Sandbox Code Playgroud)
我确实将 Integer 转换为 int 但没有帮助。
.NET 版本 < 6
如果您使用 .Net 6 及更高版本,您可以将 Comparer 与 PriorityQueue 结合使用,如下所示:
对于递增顺序:
PriorityQueue<int,int> pq = new PriorityQueue<int,int>(Comparer<int>.Create((a,b)=>a-b));
Run Code Online (Sandbox Code Playgroud)
或者对于降序:
PriorityQueue<int,int> pq = new PriorityQueue<int,int>(Comparer<int>.Create((a,b)=>b-a));
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3268 次 |
| 最近记录: |