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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 4.92
Jagon95
Сообщений: n/a
#1

Сортировка перемешиванием - C++

01.12.2011, 17:24. Просмотров 1607. Ответов 0
Метки нет (Все метки)

Доброго времени суток! Я написал программу, выполняющую шейкерную сортировку (перемешиванием) массива из случайных чисел на 30 тыс. элементов. В ходе написания встречались сложности, с которыми я, до сих пор, справлялся. И вот, когда, казалось бы, пофиксил все ошибки и запустил таки программу, выяснилось, что она не работает. В чём проблема, не знаю. Помогите.

PS
Данная программа должна высчитывать время, затрачиваемое на сортировку массивов от 1 тыс. до 30 тыс. элементов с шагом в 1000 элементов (30 циклов). Желательно, чтобы код был написан на простейшем уровне (примерно как здесь). Заранее спасибо.

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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
 
int main(void)
{
    int m[30000];
    int mc[30000];
    int i, x, y, n, j, k;
    time_t t1, t2;
 
    randomize();
 
    for (i=0; i<30000; i++)
    mc[i]=random(10000);
 
 
    for(j=1; j<31; j++)
    {
        n=j*1000;
 
 
    t1=time(NULL);
 
    for(i=0; i<n; i++)
    m[i]=mc[i];
//начало сортировки
    for (i=0; i<n/2; i++)
    {
        for (k=i; k<n-i-1; k++)
        {
        if (m[k]>m[k+1])
        {
            x=m[k];
            m[k]=m[k+1];
            m[k+1]=x;
        }
        }
        for (k=n-i-1; k>i; k--)
        {
        if (m[k]>m[k-1])
        {
            x=m[k];
            m[k]=m[k-1];
            m[k-1]=x;
        }
        }
    }
//конец сортировки
t2=time(NULL);
 
printf("%4d", t2-t1); //вывод времени
 
}
}
Добавлено через 11 минут
"Не работает" - сортировка не выполняется/выполняется неверно.
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.12.2011, 17:24
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Сортировка перемешиванием (C++):

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

Сортировка слиянием. В каком куске кода происходит сортировка и каким именно образом? - C++
Помогите, пожалуйста, разобраться. Подскажите в каком куске кода происходит сортировка и каким именно образом? #include &lt;iostream&gt; ...

Быстрая сортировка (сортировка Хоара) для связных списков - C++
есть у кого готовый алгоритм? или подскажите как реализовать

Быстрая сортировка(сортировка Хоара). Отсортировать фрагмент массива - C++
Мне нужно отсортировать фрагмент массива, расположенный между первым и последним отрицательным элементом. Немогу понять как устоновить...

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

Быстрая сортировка (сортировка методом Хоара) - C++
Ввести массив x1,x2,...,x20 в диапазоне . Требуется расположить отрицательные элементы в порядке убывания. Вывести массивы до и после...

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
01.12.2011, 17:24
Привет! Вот еще темы с ответами:

C/C++ FAQ :: Быстрая сортировка (сортировка Хоара) - C++
Вопрос, скорее академический, по мотивам реализации. Вот в faq приведена реализация этого метода сортировки на C++. В коде есть следующий...

Сортировка вектора по полю(Сортировка вставками) - C++
Здравствуйте! Нужно написать сортировку вектора по полю weight класса tomato. Вот класс: #pragma once #include &lt;iostream&gt; ...

2 сортировки: пирамидальная сортировка и сортировка слиянием - C++
Реализовать два улучшенных алгоритма сортировки. Для каждого алгоритма вычислить показатель качества сортировки (количество операций, т.е....

Сортировка Шелла и сортировка вставками - C++
Напишите программу для: 1)Сортировка вставкой 2)сортировка Шелла


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

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

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