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

Реализация алгоритма сортировки для любых типов данных - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ строки:ПЕРЕВОД ИЗ ОДНОЙ C/ С В ДР http://www.cyberforum.ru/cpp-beginners/thread72072.html
Вывести все числа не превышающие данное N, которые в 2-ной системе счислания имеют симметричную запись ( начинается с 1!). Помогите юному гению в юбке сдать задачу на зачет! Пасибки за понимание
C++ Сортировка пузырьком... Доброе утро/день/вечер!=) У меня есть пару вопросов, на которые я никак не могу найти ответов... Есть программа, в которй проставляется оценка каждого студента за определённый предмет, всё ничего кроме одного, не работает сортировка(по студентам и оценкам) пузырьком... Никаких изменений эта сортировка не принесла...Почитал ваш форум, и натыкался впринцепе на тоже самое, что я в своём коде... http://www.cyberforum.ru/cpp-beginners/thread72069.html
C++ Замена в одномерном массиве, работа со строками из нулей и единиц
HELP!!!я ноль в с++ не могу сделать данные задачи: "Даны одномерные массивы чисел Х,размерностью n и Y,размерностью m. необходимо написать программу с использованием функций в которой будут заменятся нулями все положительные элементы в массивах." "дана строка состоящая из групп нулей и едениц. каждая группа отделяется друг от друга одним или несколькими пробелами. нужно создать программу...
C++ Структуру
Помогите решить задачи...пробовал ничего не смог понять. 1) Определить структуры, описывающие шар и точку в трёхмерном пространстве. Составить и протестировать функцию, которая проверяет, находится ли точка внутри заданного шара. и вторая, уже была но я не смог понять, объяснить 2) Описать процедуру IncTime(H, M, S, T), которая увеличивает на Т секунд время, заданное в часах Н, минутах М...
C++ Алгоритм бинарных вставок http://www.cyberforum.ru/cpp-beginners/thread72058.html
подскажите пожалуйста как изменить алгоритм простых вставок.чтобы преобразовать его в алгоритм бинарных вставок..
C++ Вычислить произведение элементов массива S, значение которых не больше заданного негативного числа Здесь задали на Борланде С++ ну просто нечто (я нуб в этом деле) 1.Вычислить произведение элементов массива S ,значение которых не больше заданного негативного числа A, а индексы нечетные(Кол.элементов:N=16;Элементы:от -9 до 4;A=-4;) 2.Найти количество одинаковых элементов которые находятся в массиве A(N). ( Кол.элементов:N=21;Элементы:от -4 до 4;) 3.Найти и напечатать, сколько не... подробнее

Показать сообщение отдельно
Evg
Эксперт CАвтор FAQ
17537 / 5775 / 370
Регистрация: 30.03.2009
Сообщений: 15,904
Записей в блоге: 26
22.12.2009, 19:31     Реализация алгоритма сортировки для любых типов данных
Запустил программу, она мне в ответ пишет
Sorting 3000 elements with the sort1 takes 10000 msec.
Ты можешь по этой надписи оценить правильность работы? Я - нет

Я выкинул к чёртовой матери весь твой main и написал свой. Без красоты в виде времени сортировки, случайно сгенерённых массивов, вопросов и прочего. Ты можешь проверять на своём, но я предпочитаю на своём

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
int main()
{
    const int MAX = 10;
    int a[MAX] = { 1, 7, 8, 34, 2, 5, 0, 6, 9, 3 };
    int i;
 
    Sort (a, MAX);
    for (int i = 0; i < MAX; i++)
      printf ("%d ", a[i]);
    printf ("\n");
 
    return 0;
}
Результат такой:

Код
0 1 2 3 5 6 7 8 9 34
Т.е. оно по крайне мере работает

--------------------------------------------------------

Шаг N2:
Поменяй функцию Change. Сечай ты передаёшь указатель на начало массива и индексы. Перепиши так, чтобы подавались просто указатели на два элемента массива (т.е. чтобы обмен местами работал обсьрагированно от массива и был универсальным с точностью до типа переменной)

Шаг N3:
Сравнение двух элементов вместо операции "<" или ">" делай через функцию сравнения, которую пока просто напиши рядом и пусть она принимает указатели на два int'а
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru