如何根据子列表的第一个索引的值对二维列表进行排序?
说我有一个2-D列表" lst"包含以下值:
List<List<int>^>^:
{
{3, 1, 3},
{2, 5, 6},
{1, 4, 3}
}
排序后,&#34; lst [0]&#34;应该是&#34; {1,4,3}&#34;和&#34; lst [0] [0]&#34;应该是&#34; 1&#34;。怎么做?不幸的是,我使用的是C ++ \ CLI,而不是C#。提前谢谢。
答案 0 :(得分:0)
我对C ++ / CLI不太满意,所以请稍等一下。
我认为https://stackoverflow.com/a/15974889/56778给出了基本的想法。为您的列表修改,它将类似于:
static int AnonymousMethod1(List<int>^ p1, List<int>^ p2)
{
return p1[0].CompareTo(p2[0]);
}
Comparison<List<int>^> ^ comparisonDelegate = gcnew Comparison<List<int>^>(&AnonymousMethod1);
lstTest->Sort(comparisonDelegate);