Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
juli.ya92
2 / 2 / 0
Регистрация: 25.09.2010
Сообщений: 82
#1

Сортировка строк матрицы методом Шелла - C++

10.11.2010, 14:03. Просмотров 1138. Ответов 3
Метки нет (Все метки)

Дана матрица размерности n*n отсортировать строки матрицы методом шелла по возрастанию=)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.11.2010, 14:03
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Сортировка строк матрицы методом Шелла (C++):

Сортировка диагоналей матрицы методом Шелла/вставок - C++
Дана матрица размерностью n*n, содержащая целые числа. Отсортировать диагонали матрицы, параллельные побочной, по возрастанию элементов...

Сортировка методом Шелла - C++
Помогите! Нужно написать код программы сортировки одномерного массива по убыванию методом Шелла. Код нужен на экзамен.

Сортировка методом Шелла - C++
Помогите найти пример сортировки методом Шелла. Только нужно чтоб массив был рандомный, а потом уже происходила сортировка. Заранее...

Сортировка методом Шелла - C++
Ребят проверьте программу и исправьте ошибку и скиньте плиз скрин кода программы ну точней вывод ото черное окошко и саму программу без...

Сортировка методом Шелла - C++
Не могу разобраться с сортировкой методом Шелла именно в двумерном массиве. Если, например, нам дан двумерный массив 10 на 10, а элементы...

Сортировка методом шелла - C++
День добрый! Хочу разобраться с алгоритмом. Перепишете его пожалуйста без шаблонов, если я правильно понял что это такое. Спасибо. Вот...

3
easybudda
Модератор
Эксперт CЭксперт С++
10020 / 5943 / 1004
Регистрация: 25.07.2009
Сообщений: 11,230
10.11.2010, 15:07 #2
как-то так?
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
 
#define SWAP(a, b) ({ *(a) += *(b); *(b) = *(a) - *(b); *(a) = *(a) - *(b); })
 
#define SIZE 10
 
int main(void){
    int matrix[SIZE][SIZE], i, j, k;
 
    srand(time(NULL));
 
    printf("Unsorted:\n");
    for ( i = 0; i < SIZE; ++i )
        for ( j = 0; j < SIZE; ++j )
            printf("%02d%c", ( matrix[i][j] = rand() % 100 ), ( j < SIZE - 1 ) ? ' ' : '\n');
 
    for ( i = 0; i < SIZE; ++i ){
        for ( k = SIZE / 2; k > 0; --k ){
            for ( j = 0; j + k < SIZE; ++j ){
                if ( matrix[i][j] > matrix[i][j + k] )
                    SWAP(&matrix[i][j], &matrix[i][j + k]);
            }
        }
    }
 
    printf("\nSorted:\n");
    for ( i = 0; i < SIZE; ++i )
        for ( j = 0; j < SIZE; ++j )
            printf("%02d%c", matrix[i][j], ( j < SIZE - 1 ) ? ' ' : '\n');
 
    return 0;
}
0
juli.ya92
2 / 2 / 0
Регистрация: 25.09.2010
Сообщений: 82
10.11.2010, 19:14  [ТС] #3
Блин так ошибка в строке SWAP(&matrix[i][j], &matrix[i][j + k]);
0
easybudda
Модератор
Эксперт CЭксперт С++
10020 / 5943 / 1004
Регистрация: 25.07.2009
Сообщений: 11,230
10.11.2010, 21:03 #4
Цитата Сообщение от juli.ya92 Посмотреть сообщение
Блин так ошибка в строке SWAP(&matrix[i][j], &matrix[i][j + k]);
блин, да всё там работает! поменяйте #define SWAP... на
C
1
2
3
4
5
void SWAP(int * a, int * b){
  int c = *a;
  *a = *b;
  *b = c;
}
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.11.2010, 21:03
Привет! Вот еще темы с ответами:

Сортировка методом Шелла С++ - C++
Помогите пожалуйста. Нужно отсортировать двухмерный массив методом Шелла. Но отсортировать отсортировать столбцы за значением последнего...

Сортировка методом Шелла - C++
Помогите с написанием программы, которая реализует сортировку массива методом шелла...я только начинаю изучать с++,поэтому обращаюсь с...

Сортировка массива методом Шелла - C++
добрый день нужна помощь, есть код #include &lt;iostream&gt; using namespace std; int main() { // razmer massiva, //...

Сортировка методом Шелла по убыванию - C++
Помогите дописать программу в 6 кейсе, что бы там было сортировка методом Шелла по убыванию. #include &quot;stdafx.h&quot; //...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru