0 / 0 / 0
Регистрация: 15.04.2010
Сообщений: 82
|
||||||
1 | ||||||
Сортировка Шелла15.04.2010, 18:11. Показов 7894. Ответов 34
Метки нет (Все метки)
Ребят помогите. есть матрица нужно отсортировать каждую строчку матрицы по убыванию алгоритмом Шелла.
0
|
15.04.2010, 18:11 | |
Ответы с готовыми решениями:
34
Сортировка Шелла. Написал программу, не могу понять, почему сортировка не выполняется Сортировка Шелла и пирамидальная сортировка для символов Сортировка Шелла и сортировка вставками Пирамидальная сортировка и сортировка Шелла |
Быдлокодер
512 / 298 / 85
Регистрация: 22.11.2009
Сообщений: 892
|
|
23.04.2010, 16:07 | 21 |
Vorona, Там ошибки нет.
LiLi R., Так и понятно. Посмотрите в тело функции - Вы оперируете переменными, которых даже не задали! И я об этом уже говорил. Вот тоже самое - придумать свое слово и упорно использовать его, причем никто понимать тебя не будет. А вот если ты возьмешь словарь и впишешь его туда, то потом можешь тыкать незнающих носом, и они будут знать его значение. Объявите в теле функции или глобальные переменные, которых не хватает.
0
|
0 / 0 / 0
Регистрация: 15.04.2010
Сообщений: 82
|
|
23.04.2010, 19:56 [ТС] | 22 |
Darky, обьявила. теперь 3 ошибки одного типа
error C2109: subscript requires array or pointer type 43 45 51 строка
0
|
Peace 2 all shining faces
674 / 535 / 85
Регистрация: 05.03.2010
Сообщений: 1,282
|
||||||
23.04.2010, 20:16 | 23 | |||||
работу алгоритма не проверял и не компилировал, вместо a стоило написать matrix, или объявить a, как двумерный массив
еще нужно было динамически выделить вначале и удалить по окончанию работы программы память под matrix
0
|
0 / 0 / 0
Регистрация: 15.04.2010
Сообщений: 82
|
|
23.04.2010, 21:41 [ТС] | 24 |
Vorona, программа компилется но при запуске ошибку выдает...
0
|
2347 / 1720 / 148
Регистрация: 06.03.2009
Сообщений: 3,675
|
|
23.04.2010, 21:50 | 25 |
LiLi R., еще бы, matrix используется без инициализации элементов.
0
|
Peace 2 all shining faces
674 / 535 / 85
Регистрация: 05.03.2010
Сообщений: 1,282
|
||||||
23.04.2010, 22:36 | 26 | |||||
вставьте этот кусок после выделения памяти (после 29 строки)
здесь происходит присваивание значений, путем ввода их с клавиатуры, элементам матрицы
0
|
2347 / 1720 / 148
Регистрация: 06.03.2009
Сообщений: 3,675
|
|
23.04.2010, 22:49 | 27 |
Vorona, сюда по коду приведенному в первом посте, матрицу необходимо читать из файла.
0
|
0 / 0 / 0
Регистрация: 15.04.2010
Сообщений: 82
|
|
23.04.2010, 23:39 [ТС] | 28 |
Vorona, Да по задаче есть input.txt там матрица. как сделать так чтоб прога считала из файла?
0
|
Peace 2 all shining faces
674 / 535 / 85
Регистрация: 05.03.2010
Сообщений: 1,282
|
||||||
24.04.2010, 02:35 | 29 | |||||
вот на си навоял минимально, видел, что вы и размеры матрицы из файла берете, так вот:
первые два числа в файле - размеры матрицы, остальные числа, каким бы образом ни были записаны они будут размещены относительно этих размеров... никаких проверок на действительность кол-ва чисел относительно размеров матрицы не делал, просто посмотрите и разберитесь с этим:
выводим на экран все числа в файле 3 и 4 обозначили ее размерность и дальше числа выстраиваются в матрицу 3х4...
1
|
0 / 0 / 0
Регистрация: 15.04.2010
Сообщений: 82
|
|
25.04.2010, 20:22 [ТС] | 30 |
Vorona, Все просто супер. Малюсенький вопрос и се - как результат вывести не в проге а в файл output.txt?
0
|
9 / 9 / 2
Регистрация: 27.01.2010
Сообщений: 63
|
|
25.04.2010, 23:05 | 31 |
все чем могу помочь....
3. Метод Шелла. Метод состоит в том, что упорядочиваемый массив делится на ряд групп, каждая из которых упоря-дочивается методом вставки. Количество операций сравнений оценивается следующим образом: С 0,5 N3/2. 2. Метод вставки: Элемент массива ai (начиная со второго) сравнивается последовательно с предшествующими aj, где j = i-1, i-2, … до тех пока не будет найден элемент с меньшим значением, чем ai. Пусть этот элемент с но-мером j, где j < i. Тогда все элементы с номерами j+1, …i-1 сдвигаются на одну позицию, а i-й элемент ставится на место (j+1)-го элемента. Если все впереди стоящие элементы больше i-го, то они сдвигаются на одну позицию, а i-й элемент ставится на первое место. Количество сравнений определяется по форму-ле: C = N(N-1)/4.
0
|
Peace 2 all shining faces
674 / 535 / 85
Регистрация: 05.03.2010
Сообщений: 1,282
|
||||||
26.04.2010, 00:15 | 32 | |||||
откроем еще один поток out для записи в файл и везде, где выводим на экран, сразу же выводим и в файл функцией fprintf, аналогичной printf, просто принимает еще один аргумент - поток вывода информации)
1
|
15 / 15 / 8
Регистрация: 01.09.2011
Сообщений: 65
|
||||||
05.01.2012, 09:27 | 33 | |||||
вот моя функция сортировки шелла по возрастанию
0
|
278 / 173 / 21
Регистрация: 10.07.2011
Сообщений: 441
|
||||||
05.01.2012, 09:39 | 34 | |||||
думается мне вы поторопились.
Вот я применил вашу функцию:
РЕЗУЛЬТАТ
before :: 1 4 3 5 3 after :: 1 3 4 3 5
0
|
15 / 15 / 8
Регистрация: 01.09.2011
Сообщений: 65
|
||||||
05.01.2012, 15:28 | 35 | |||||
вот исправил
0
|
05.01.2012, 15:28 | |
05.01.2012, 15:28 | |
Помогаю со студенческими работами здесь
35
Сортировка Шелла Сортировка Шелла Сортировка Шелла Сортировка Шелла Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |