Поменять местами две строки двумерного массива с минимальным и максимальным элементом по модулю

поняла чтобы поменять строки местами нужно поменять местами только индексы i, то есть индексы i всех элементов строки где есть минимальный элемент матрицы поменять на индекс i максимального элемента матрицы и наоборот. Проблема в том что я просто не знаю как это записать правильно(

        static double sort(int[,] arr)
        {
            int max = arr[0, 0];
            int min = arr[0, 0];
            int maxIndex = 0;
            int minIndex = 0;

            for (int i = 0; i < arr.GetLength(0); i++)
            {
                for (int j = 0; j < arr.GetLength(1); j++)
                {
                    if (max > Math.Abs(arr[i, j]))
                    {
                        max = arr[i, j];
                        maxIndex = i;
                    }
                    if (min < Math.Abs(arr[i, j]))
                    {
                        min = arr[i, j];
                        minIndex = i;
                    }
                     
                }
            }    
        

Ответы (2 шт):

Автор решения: Igor
for (int j = 0; j < arr.GetLength(1); j++)
{
  int temp = arr[minIndex, j];
  arr[minIndex, j] = arr[maxIndex, j];
  arr[maxIndex, j] = temp;
}
→ Ссылка
Автор решения: S.H.

А что, если так?

    static void sort(int[,] arr)
    {
        int max = arr[0, 0];
        int min = arr[0, 0];
        int maxIndex = 0;
        int minIndex = 0;

        for (int i = 0; i < arr.GetLength(0); i++)
        {
            for (int j = 0; j < arr.GetLength(1); j++)
            {
                if (max > Math.Abs(arr[i, j]))
                {
                    max = arr[i, j];
                    maxIndex = i;
                }
                if (min < Math.Abs(arr[i, j]))
                {
                    min = arr[i, j];
                    minIndex = i;
                }
                 
            }
        }
        int tmp=0;
        if ( minIndex!=maxIndex ){
            for( int j = 0; j < arr.GetLength(1); j++ ){
                tmp = arr[minIndex,j];
                arr[minIndex,j] = arr[maxIndex,j];
                arr[maxIndex,j] = tmp;
            }
        }
    }
→ Ссылка