Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/275.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何比较两个队列<;int>;?_C#_Sorting_Queue - Fatal编程技术网

C# 如何比较两个队列<;int>;?

C# 如何比较两个队列<;int>;?,c#,sorting,queue,C#,Sorting,Queue,下面是我的简化c#代码。我有一个包含成本的队列列表。我希望成本最低的队列成为列表的第一个元素 队列中的顺序很重要。我不能重新排序 我想修改我的代码,以便当x.Peek()=y.Peek()时,比较每个队列中的第二个值 Declare Queue List<Queue<int>> ListofQueues; ..... // Perform Sort ListofQueues.Sort((x, y) => x.Peek().CompareTo(y.Peek()));

下面是我的简化c#代码。我有一个包含成本的队列列表。我希望成本最低的队列成为列表的第一个元素

队列中的顺序很重要。我不能重新排序

我想修改我的代码,以便当x.Peek()=y.Peek()时,比较每个队列中的第二个值

Declare Queue
List<Queue<int>> ListofQueues;
.....
// Perform Sort
ListofQueues.Sort((x, y) => x.Peek().CompareTo(y.Peek()));
ListofQueues[0].Dequeue();
声明队列
队列列表;
.....
//执行排序
排序((x,y)=>x.Peek().CompareTo(y.Peek());
ListofQueues[0]。退出队列();
ListofQueues=newlist();
排序((x,y)=>x.ToList()[2]。比较(y.ToList()[2]);
ListofQueues[0]。退出队列();
ListofQueues=newlist();
排序((x,y)=>x.ToList()[2]。比较(y.ToList()[2]);
ListofQueues[0]。退出队列();

成本最低的队列肯定取决于其元素的总和吗?总成本对不同大小的队列不起作用。我退出队列()的顺序对我很重要。在每一步中,我都想确保每个dequeue的成本最低()为什么每个队列中的第二个值表示队列的成本最低?那没有道理。引用上面的Caius“成本最低的队列肯定取决于其元素的总和吗?”。此外,不能偷看第二个元素。您必须创建一个从Queue继承的新类,并实现您自己的SuperPeek()方法或其他方法。成本最低的队列肯定取决于其元素的总和?总成本对不同大小的队列不起作用。我退出队列()的顺序对我很重要。在每一步中,我都想确保每个dequeue的成本最低()为什么每个队列中的第二个值表示队列的成本最低?那没有道理。引用上面的Caius“成本最低的队列肯定取决于其元素的总和吗?”。此外,不能偷看第二个元素。您必须创建一个从队列继承的新类,并实现您自己的SuperPeek()方法或其他方法。
List<Queue<int>> ListofQueues = new List<Queue<int>>();
ListofQueues.Sort((x, y) => x.ToList()[2].CompareTo(y.ToList()[2]));
ListofQueues[0].Dequeue();