Сортировка массива методом Шелла - C (СИ)
Формулировка задачи:
Ребят, помогите,нужно отсортировать двумерный массив методом Шелла. Написал код, вроде всё правильно, но сортировать оно не хочет.
// ConsoleApplication32.cpp : Defines the entry point for the console application. // #include "stdafx.h" #include <time.h> #include <iostream> #include <fstream> #include <stdio.h> using namespace std; const int n = 5, m = 6; int i, j, por, per; int mass[n][m]; void ran() { srand(time(NULL)); for (i = 0; i < n; i++) { for (j = 0; j < m; j++) { mass[i][j] = rand() % 25; } } } void print() { for (i = 0; i < n; i++) { for (j = 0; j < m; j++) { printf("%d ", mass[i][j]); if (j == m - 1) printf("\n"); } } printf("\n\n"); } void Sort() { int d, i, j; for (d = n / 2;d >= 1; d /= 2) { for (i = d;i < n;i++) { for (j = i;j >= d && mass[j - d]>mass[j]; j -= d) { swap(mass[j], mass[j - d]); } } } } int _tmain(int argc, _TCHAR* argv[]) { ran(); print(); Sort(); print(); getchar(); getchar(); }
Решение задачи: «Сортировка массива методом Шелла»
textual
Листинг программы
mass[j - d]>mass[j]
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д