按照C#中第一列排序算法的第二列排序二维数组

时间:2014-03-31 18:47:19

标签: c# sorting multidimensional-array

我有一个[2,5000]字符串数组,我想根据第一行排序,但我希望第二行遵循该排序算法。

我能否就如何应对这种情况有所了解?

编辑: 我的数组看起来像

{15,13,​​16,19,25,29,11} {12月12日,星期四,星期四,星期五,星期六,星期日16,星期一}}

我希望它为

{29,25,19,16,15,13,​​11} {sun 16,sat 15,fri 14,wed 12,thu 13,mon 17}

2 个答案:

答案 0 :(得分:1)

不要创建二维数组;创建一个具有两个属性的类的单维数组,然后基于仅比较其中一个值的自定义比较器对 进行排序。

答案 1 :(得分:0)

我想这是一项任务。您需要编写排序算法(包括一些very simple ones),并在排序第一行时,在第一行和第二行执行所有交换。

即。排序算法可能看起来像

void Sort(string[] array) {
    // some logic to loop over the array, determine which elements to swap
        swap(array[x], array[y]);
}

基本上你想编写类似

的代码
void Sort(string[] firstRow, string[] secondRow) {
    // some logic to loop over firstRow, determine which elements to swap
        swap(firstRow[x], firstRow[y]);
        swap(secondRow[x], secondRow[y]);
}