Сортировка строки двумерного массива

264
22 декабря 2017, 02:10

Задача: Написать функцию которая принимает указатель на двумерный массив , количество строк, количество столбцов и строку k которую нужно отсортировать по возрастанию.

Передать-то я вроде смог, но что я передал и что с ним делать - не знаю.

int n, m, k;
cout << " Enter N,M,K: " << endl;
cin >> n >> m >> k;
int** p = new int*[m];
for (int i = 0; i < m; i++)
{
    p[i] = new int[n];
}
InputTwoArray(p,m,n); //ввод матрицы
PrintMatrix(p, m, n); //вывод на консоль
SortLine(*(p+k-1),  n); //сама сортировка

Вот сама функция частично переделанная, но я считаю, что она абсолютно не верна. Объясните пожалуйста как сделать и, по возможности, с кодом.

void SortLine(int *arr, int n) {//сортировка
int k = *arr - 1;
for (int j = n; j > n; j--)
    if (arr[n] < arr[n])
    {
        int tmp = arr[n];
        arr[n] = arr[n];
        arr[n] = tmp;
    }
}
Answer 1

Примерно так:

void sort(int* arr, unsigned int m)
{
    for(unsigned int i = 1; i < m; i++)
      for (unsigned int j = 1; j < m; j++)
        if (arr[j] < arr[j-1])
        {
            int tmp = arr[j-1];
            arr[j-1] = arr[j];
            arr[j] = tmp;
        }
}
void sort(int** matrix, unsigned int n, unsigned int m, unsigned int k)
{
    if (!matrix)
        return;
    if (k >= n)//Номер строки не корректен
        return;
    if (!matrix[k])
        return;
    sort(matrix[k], m);
}
READ ALSO
Помогите разобраться с MinGW C++

Помогите разобраться с MinGW C++

Работаю в CodeBlocksПодключено несколько библиотек

216
Инициализация wstring

Инициализация wstring

Можно ли инициализировать wstring как string :

213
Ошибка в коде: Нарушение прав доступа при чтении!!! Что не так с кодом?

Ошибка в коде: Нарушение прав доступа при чтении!!! Что не так с кодом?

ЗаданиеДля заданной матрицы размером 8 на 8 найти такие k, что k-я строка матрицы совпадает с k-м столбцом

221
С++ метод половинного деления выводит -nan(ind)

С++ метод половинного деления выводит -nan(ind)

все нормально считает ответ но я не могу его вернуть из функции только на экран вывожу на предпоследней итерации ответ верный а на последней...

197