Quicksort, for two-dimensional matrix

1

How I am doing a program in which I need to apply Quicksort, now I work with a two-dimensional matrix, what I want to achieve is that when 2 equal numbers are compared ( matriz[i,j] <= matriz[i+1,j] ) the value [i,j+1] and the value is compared [i+1,j+1] and decide which should go first. If anyone has any idea how to achieve this I would appreciate it, attach the quicksort method that I am using.

private void quicksortMenorPeso(int[,] vector, Int64 primero, Int64 ultimo)
    {
        Int64 i, j, central;
        double pivote;
        central = (primero + ultimo) / 2;
        pivote = vector[central, 1];
        i = primero;
        j = ultimo;
        do
        {
            while (vector[i, 1] < pivote) i++;
            while (vector[j, 1] > pivote) j--;
            if (i <= j)
            {
                int temp; int temp2;
                temp = vector[i, 0];
                temp2 = vector[i, 1];
                vector[i, 0] = vector[j, 0];
                vector[i, 1] = vector[j, 1];
                vector[j, 0] = temp;
                vector[j, 1] = temp2;
                i++;
                j--;
            }
        } while (i <= j);

        if (primero < j)
        {
            quicksortMenorPeso(vector, primero, j);
        }
        if (i < ultimo)
        {
            quicksortMenorPeso(vector, i, ultimo);
        }
    }
    
asked by Fontz 03.09.2018 в 06:07
source

0 answers