|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
17.02.2017, 13:41 | #1 |
Регистрация: 17.02.2017
Сообщений: 4
|
Сравнительный анализ двух методов сортировки C++
Добрый день, прошу помочь со следующей задачей:
Необходимо разработать программу для анализа методов сортировки таблицы. Выполнить сравнительный анализ метода вставки с прямым включением и метода Шелла. Сравнительный анализ методов сортировки следует выполнять путем подсчета числа сравнений ключей, выполненных в процессе сортировки таблицы различными методами. Программа разрабатываемого должна удовлетворять следующим требованиям: 1. Алгоритмы, реализующие операции над таблицами, нужно оформить в виде процедур (функций) с соответствующими формальными параметрами. 2. Таблица должна иметь не менее двух полей, одно из которых - ключевое. 3. На экран выводить: а) начальную таблицу; б) результаты выполнения шагов сортировки (поиска), что демонстрируют конкретный метод (выводить только значение ключевого поля, выделяя ключи записей, переставляются, цветом или другими средствами) в) окончательный результат сортировки Прошу помочь разобраться с данной задачей! |
17.02.2017, 14:03 | #2 |
Регистрация: 17.02.2017
Сообщений: 4
|
Подскажите хотя-бы с чего начать
|
17.02.2017, 16:13 | #3 |
Старожил
Регистрация: 15.02.2010
Сообщений: 15,709
|
1. Открыть учебник или вики и изучить требуемые алгоритмы сортировок.
2. Реализовать операции над таблицами в виде функции, как требует задание. 3. Повторить для всех требуемых вариантов сортировок: а) вывести начльную таблицу б) сделать шаг сортировки с подсчетом сравнения ключей, вывести пром. результат с выделениями в) вывеести результат |
17.02.2017, 21:15 | #4 |
Участник клуба
Регистрация: 14.05.2016
Сообщений: 1,793
|
Могу помочь советом.
1) Изучи, в подробностях сами методы. В принципе, для этих целей, можно применить youtube. Ну вот, например: https://www.youtube.com/watch?v=wfgTzA4IYpE https://www.youtube.com/watch?v=RkpNdYf4oao ........................... ........................... (не уверен тот ли метод вставками тебе нужен; часто там и коды программ приведены). 2) Реши вручную (а ещё лучше нарисовать каждый шаг решения в Paint). Можешь решить на небольшом примере таблицы. 3) Следующий шаг - напиши 2-е отдельные программы с сортировками (напомню, у многих видеороликов прямо код прилагают; но может какой-то метод и самому придётся написать)... Ты помнишь вручную считал, так вот, сопоставь результаты ручного и машинного счёта - одинаковы ли? 4) Следующий шаг: "1. Алгоритмы, реализующие операции над таблицами, нужно оформить в виде процедур (функций) с соответствующими формальными параметрами." Ну это чисто механически делается... В принципе, я мог бы сделать этот шаг. 5) Следующий шаг: "2. Таблица должна иметь не менее двух полей, одно из которых - ключевое. 3. На экран выводить: а) начальную таблицу; выделяя ключи записей, переставляются, цветом или другими средствами) в) окончательный результат сортировки" Это тоже я могу сделать... Но заметь, я удалил пункт "б" (только мне не понятно что значит " цветом" - это VC++ или C++ Builder. Ладно, потом разберусь). 6) Следующий шаг: "б) результаты выполнения шагов сортировки (поиска), что демонстрируют конкретный метод (выводить только значение ключевого поля, выделяя ключи записей, переставляются, цветом или другими средствами)". Это ты должен сделать. Последний раз редактировалось ura_111; 18.02.2017 в 09:06. |
18.02.2017, 12:17 | #5 |
Регистрация: 17.02.2017
Сообщений: 4
|
|
18.02.2017, 18:36 | #6 |
Участник клуба
Регистрация: 14.05.2016
Сообщений: 1,793
|
Какой ещё: "... клавиатура, вывод таблицы.... на этом запнулся..."?
Ты не понимаешь главный смысл своей работы... МЕТОДЫ СОРТИРОВКИ, а всё остальное - шелуха с семечек и пристраивается по ходу... Я повторяю ещё раз: пиши два проекта по расчёту каждым из методов в отдельности. Не просто код приводи, а именно протестированный на контрольном примере (который предварительно необходимо решить вручную). Таким образом проверится адекватность методов... Это суть твоей работы - на ней и концентрируйся. Этот момент ты должен сделать сам: Пока не будут готовы сами методы сортировок - на форум не возвращайся. Это бессмысленная трата времени (лучше потрать его на "суть твоей работы"): я принципиально не буду ничего делать, а нулевых здесь особо не жалуют; нулевой - это значит "сделай за меня", - ну, одно дело, если нужна программа на уровне лабы... а у тебя на уровне курсача (в этом задании за целый семестр информация сконцентрирована - не меньше). Здесь за такое бабки берут... Ну, а если ты платить ничего не хочешь, тогда надо пахать... p.s.1: на начальном этапе - пусть ввод всех данных для расчёта будет "жёстко в самой программе". Типа такого (я не до конца понимаю, что значит " таблица" - разберись с этим, но если имеется ввиду "двумерный массив"): Код:
Код:
p.s.2: если совсем нулевой, тогда онлайн-курсы по с++: 0.jpg Проходи курсы не один, а 3-5 раз; и когда проходишь не просто созерцай, а повторяй программы за лекторами... Если информации много - сначала смотри целиком (чтобы быть в курсе тем), а дальше выборочно: ну например, что тебе надо? Информация по теме ввод и обработка массива, - значит и лекцию такую проходи; ввести переменную в программу - значит и лекцию такую ищи... Amiroff, трудности - это нормально, все через такое проходили (я тоже проходил через бессонные ночи, "разболелась голова от трудной задачи", "переспать с задачей"...). А ты что, другой? И ты через такое пройдёшь... Ну всё, хватит болтовни - решай проблему с методами. Последний раз редактировалось ura_111; 19.02.2017 в 01:24. |
18.02.2017, 18:40 | #7 | |
Старожил
Регистрация: 12.01.2011
Сообщений: 19,500
|
Цитата:
Вроде ж в задаче просят просто реализовать два алгоритма сортировки и посчитать сравнения (if).
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом. |
|
18.02.2017, 18:52 | #8 |
Участник клуба
Регистрация: 14.05.2016
Сообщений: 1,793
|
Я насчитал:
1) работа с консолью (или что там имелось ввиду под "ввод с клавиатуры") 2) работа с файлами - это ещё одна лаба 3) сами методы - их тоже проходят не каждый день 4) если в задании концентрируется внимание на том что и так должно быть понятно: "оформить в виде процедур (функций) с соответствующими формальными параметрами", то и это тянет на отдельную лабу с названием что-то вроде: "Работа с функциями". 5) какая-то графика |
18.02.2017, 18:56 | #9 |
Старожил
Регистрация: 12.01.2011
Сообщений: 19,500
|
Так скорее всего это курс не по Основам программирования, а по Алгоритмам )
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом. |
19.02.2017, 17:08 | #10 |
Регистрация: 17.02.2017
Сообщений: 4
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Диплом: сравнительный анализ архитектур фон Неймана и Фибоначчи (языки C или delphi) | Tanshi | Помощь студентам | 0 | 02.06.2013 10:56 |
Разработать программу на паскале, позволяющую провести сравнительный статистический анализ текста | kuzzz | Фриланс | 5 | 30.03.2010 23:38 |
Сравнительный анализ сортировок | ttjke | Свободное общение | 5 | 09.12.2009 17:40 |
Сравнительный Анализ Сред Разработки Delphi,Builder,Fox Pro | DelphiQuestions | Помощь студентам | 9 | 15.11.2009 19:59 |
сравнительный анализ различных методов сортировки целочисленных массивов | Freak | Помощь студентам | 2 | 05.05.2008 12:37 |