Этот вопрос закрыт для ответов, так как повторяет вопрос В чем ошибка сортировки матрицы?
@mpvcluuuuub

Где ошибка в алгоритме сортировки матрицы?

Матрица должная сортироваться так, что сначала идут отрицательные, потом положительные, а потом нули, сохраняя последовательность, но нули у меня почему-то идут первее
for (int index1 = 0; index1 < N * M; ++index1) {
		int i = index1 / N;
		int j = index1 % N;
		if (A[i][j] >= 0) {
			for (int index2 = index1 + 1; index2 < N * M; ++index2) {
				int k = index2 / N;
				int l = index2 % N;
				if (A[k][l] < 0) {
					swap(A[i][j], A[k][l]);
					break;
				}
			}
		}
	}

	for (int index1 = N * M; index1 >= 0; --index1) {
		int i = index1 / N;
		int j = index1 % N;
		if (i == 5) {
			i -= 1;
		}
		if (A[i][j] != 0) {
			for (int index2 = N * M; index2 >= 0; --index2) {
				int k = index2 / N;
				int l = index2 % N;
				if (k == 5) {
					k -= 1;
				}
				if (A[k][l] == 0) {
					swap(A[i][j], A[k][l]);
					break;
				}
			}
		}
	}


5f9f213778dad094222525.png
  • Вопрос задан
  • 62 просмотра
Ответы на вопрос 1
zagayevskiy
@zagayevskiy
Android developer at Yandex
Есть ощущение, что все эти твои алгоритмы должны быть одинаковыми. Просто нужно менять функцию, которая сравнивает элементы. А так это тупо сортировка.
Ответ написан
Ваш ответ на вопрос

Вопрос закрыт для ответов и комментариев

Потому что уже есть похожий вопрос.
Похожие вопросы