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

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

Войти
Регистрация
Восстановить пароль
 
_Kate_
0 / 0 / 0
Регистрация: 12.09.2012
Сообщений: 92
Записей в блоге: 1
#1

Алгоритм сортировки,ошибка! - C++

02.10.2012, 22:30. Просмотров 350. Ответов 5
Метки нет (Все метки)

У меня алгоритм сортировки вставками но вот только не сортирует почему то
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
#include <stdio.h>
#include <stdlib.h>
#include <iostream>
#include <time.h>
#include <conio.h>
//#define N 1000 
 using namespace std;
void InsertSort(int mass[], int n){
int buf, i, j;
for (i = 1; i < n; i++){
      buf = mass[i];
      j = i - 1;
      while (j >= 0 && mass[j] > buf)
      {
         mass[j+1] = mass[j];
         j--;
      }
      mass[j+1] = buf;
   }}
 
int main( )
{
int mass[100],i;
    srand(time(NULL));
    for(int i=0;i<100;i++)
    {mass[i] = rand()%100;}
    cout<<"\n"<<endl;
    cout<<"\n"<<endl;
    InsertSort(mass,100);
    for(i=0;i<100;i++){
        cout<<"\n"<<mass[i];}
    getch();
    return 0;
 
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.10.2012, 22:30
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Алгоритм сортировки,ошибка! (C++):

Алгоритм сортировки - C++
учитель попросил написать сортировку массива по возрастанию в общем виде #include &lt;stdio.h&gt; #include &lt;string.h&gt; int main() { ...

Алгоритм сортировки - C++
Здравствуйте, подскажите пожалуйста какой алгоритм можно использовать при решении такой задачи: Дана строка char * из букв и цифр...

Алгоритм сортировки - C++
пацаны ребята помогите, реализовал два алгоритма на C++, алгоритм сортировки пирамидальный(кучей) и быстрой сортировки, все они сортируют...

Алгоритм сортировки - C++
Дан одномерный масив. мне в нем нужно отсортировать по возростанию только те числа масива которые простые, а остальные оставить на той...

Алгоритм сортировки вставками - C++
Привет, всем! В алгоритме непонятна одна строчка: #include&lt;iostream&gt; #include&lt;cstdlib&gt; using namespace std; int...

Алгоритм квадратичной сортировки - C++
Доброго времени суток! есть вот такая задача: При составлении программы сортировки использовать минимальную необходимую память и...

5
Thinker
Эксперт С++
4226 / 2200 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
02.10.2012, 22:41 #2
еще как сортирует по возрастанию. все правильно написано, проверил!
0
StanislavUA
44 / 44 / 3
Регистрация: 27.04.2011
Сообщений: 163
02.10.2012, 22:42 #3
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
template <class Item>
void exch(Item &A, Item &B)
{ 
        Item t = A; A = B; B = t; 
}
template <class Item>
void compexch (Item &A, Item &B)
{ 
        if (B < A) exch(A, B) ;
}
template <class Item>
void insertion_sort(Item a[], int L, int R)
{
        int i;
        for(i = R; i > L; i--) compexch(a[i-1], a[i]);
        for (i = L + 2; i <= R; i++)
        {
                int j = i;
                Item cur = a[j];
                while (a[j - 1] > cur)
                {
                        a[j] = a[j - 1];
                        j--;
                }
                a[j] = cur;
        }
}
реализация сортировки вставками на викиучебнике
0
_Kate_
0 / 0 / 0
Регистрация: 12.09.2012
Сообщений: 92
Записей в блоге: 1
02.10.2012, 22:45  [ТС] #4
емм алгоритм то правильно написан, вот только выводит мне массив от 1 до 100 и все
а сранд не задействует вообще...
0
Thinker
Эксперт С++
4226 / 2200 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
02.10.2012, 22:47 #5
еще как задействован, каждый раз новые элементы (имеются повторения) генерируются, посмотрите внимательно. измените для примера диапазон массива или диапазон случайных чисел
1
_Kate_
0 / 0 / 0
Регистрация: 12.09.2012
Сообщений: 92
Записей в блоге: 1
02.10.2012, 23:37  [ТС] #6
нашла время работы а как можно посчитать кол-во сравнений или обменов???

Добавлено через 40 секунд
вот время работы
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
#include <stdio.h>
#include <stdlib.h>
#include <iostream>
#include <time.h>
#include <conio.h>
 using namespace std;
void InsertSort(int mass[], int n){
int buf, i, j;
for (i = 1; i < n; i++){
      buf = mass[i];
      j = i - 1;
      while (j >= 0 && mass[j] > buf)
      {
         mass[j+1] = mass[j];
         j--;
      }
      mass[j+1] = buf;
   }}
 
int main( )
{
    setlocale(LC_CTYPE,"Russian");
    int mass[100],i;
    cout<<"Рандомизированый массив";
    srand(time(NULL));
    for(int i=0;i<100;i++)
    {mass[i] = rand()%100;
    cout<<"\t"<<mass[i];
    }
    clock_t t0 = clock();
    cout<<endl; 
    cout<<"Массив после сортировки"<<endl;
 
    InsertSort(mass,100);
    for(i=0;i<100;i++){
        cout<<"\t"<<mass[i];}
    clock_t t1 = clock();
    cout<<endl;
    cout << "time: " << (double)(t1 - t0) / CLOCKS_PER_SEC << endl;
    getch();
    return 0;
 
}
Добавлено через 20 минут
увидела следующие для данного алгоритма
формулы С-колво сравнений максимальных ((n-1)*n)\2.
и колво обменов Mсред=(n-1)*n)\4.
C++
1
2
3
4
5
int C_max,M_cep;
    C_max=((100-1)*100)/2;
    M_cep=((100-1)*100)/4;
    cout<<"Кол-во сравнений:"<<C_max<<endl;
    cout<<"Кол-во обменов:"<<M_cep;
то это или нет::??
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
02.10.2012, 23:37
Привет! Вот еще темы с ответами:

Алгоритм пузырьковой сортировки - C++
#include&lt;iostream.h&gt; #define SIZE 5 void bsort (int iArray, int n); int main() { char ch; int ii; int iArray ; for(ii =...

Алгоритм плавной сортировки (C++ -> Си) - C++
static void SmoothSort(String Aarg, const int N) { int temp; A = Aarg; q = 1; r = 0; p = 1; b = 1; c = 1; while...

Реализовать алгоритм сортировки - C++
На рисунке расположены, все возможные компоненты имеющие свойства x,y. Размер рабочей части 8x8, но может быть и больше. Задача такая:...

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


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

Или воспользуйтесь поиском по форуму:
6
Yandex
Объявления
02.10.2012, 23:37
Ответ Создать тему
Опции темы

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