17 / 17 / 6
Регистрация: 10.12.2013
Сообщений: 740
|
|||||||||||
1 | |||||||||||
Какую сортировку массива применить, чтобы посчитать количество перестановок двух соседних элементов?17.06.2014, 02:39. Показов 2204. Ответов 17
Метки нет Все метки)
(
Всем привет. Я раньше создавал подобную тему, но решил создать новую. Вопрос следующий. Скажите, каким видом сортировки массива можно воспользоваться, чтобы посчитать количество перестановок двух соседних элементов?
Дело в том, что сортировка пузырьком - медленный способ. А в сортировке слиянием, как мне сказали, подсчитать количество перестановок проблематично. Заранее спасибо. Добавлено через 1 час 9 минут Вот, допустим, я написал такой код
Я не знаю.... может что то типа
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
|
|
17.06.2014, 02:39 | |
Ответы с готовыми решениями:
17
Написать программу, реализующую сортировку одномерного массива методом обмена.(Найти количество перестановок элементов) Нужно вставить счетчик, чтобы посчитать количество сравнений и перестановок Алгоритм быстрой сортировки - посчитать количество перестановок и сравнений элементов массивов Посчитать сумму каждых 2-х соседних элементов массива. |
Модератор
![]() 12630 / 10128 / 6097
Регистрация: 18.12.2011
Сообщений: 27,159
|
|
17.06.2014, 09:53 | 2 |
Если Вам количество перестановок нужно знать для оптимизации,
то не лучше ли измерять время сортировки?
0
|
220 / 165 / 47
Регистрация: 17.07.2012
Сообщений: 587
|
|
17.06.2014, 10:14 | 3 |
что значит посчитать количество перестановок соседних элементов??? каждая сортировка делает свое количество свопов соседних элементов!!! может в задача в том, чтобы посчитать количество инверсий в массиве?
0
|
17 / 17 / 6
Регистрация: 10.12.2013
Сообщений: 740
|
||||||
17.06.2014, 11:48 [ТС] | 5 | |||||
Вот задание:
Входные данные Первая строка входных данных содержит единственное натуральное число 1 ≤ N < 500000 - длину сортируемой последовательности. Каждая из последующих N строк содержит целое число 0 ≤ a[i] ≤ 999999999, i-ый элемент последовательности. Все элементы последовательности различны. Выходные данные Выведите единственное целое число - минимальное количество перестановок соседних элементов последовательности, необходимое для того, чтобы отсортировать ее по возрастанию. Сортировку пузырьком пробовал. Она медленная. Пишет "Превышено максимальное время работы". Нашел в интернете реализацию сортировки слиянием.
0
|
220 / 165 / 47
Регистрация: 17.07.2012
Сообщений: 587
|
|
17.06.2014, 12:03 | 6 |
как раз похоже на то, что надо найти количество инверсий в массиве.
что за сайт сказать можешь?
0
|
17 / 17 / 6
Регистрация: 10.12.2013
Сообщений: 740
|
|
17.06.2014, 12:04 [ТС] | 7 |
SlavaSSU, http://programmado.ru/59-sorti... -na-s.html вот.
0
|
17 / 17 / 6
Регистрация: 10.12.2013
Сообщений: 740
|
|
17.06.2014, 12:13 [ТС] | 8 |
SlavaSSU, Я думаю, что нет. Так как это сайт университета. Вот фото задачи.
0
|
17 / 17 / 6
Регистрация: 10.12.2013
Сообщений: 740
|
|
17.06.2014, 12:18 [ТС] | 9 |
Помощь нужна срочно. Препод сказал, что желательно использовать сортировку слиянием.
0
|
220 / 165 / 47
Регистрация: 17.07.2012
Сообщений: 587
|
||||||
17.06.2014, 13:14 | 11 | |||||
вот попробуй пошли вот это!
я там ее еще дебагал поэтому дофига комментов! я не уверен что правильно, но просто интересно проверить! UPD:: да это верно! я на другом сайте послал - полное решение!))
1
|
17.06.2014, 13:19 | 12 |
Trwsdf, ему нужна такая сортировка, которая переставляя только соседние элементы даст минимум перестановок.
При этом переставлять сами элементы не надо, нужно только подсчитать перестановки.
1
|
4202 / 1794 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
|
|
17.06.2014, 13:20 | 13 |
Это из серии "Куда бы мне поехать, чтоб измерить пройденный путь?": хочешь - измеряй, не хочешь - не измеряй, с выбором пункта назначения это ни как не связано.
1
|
17 / 17 / 6
Регистрация: 10.12.2013
Сообщений: 740
|
||||||
17.06.2014, 13:27 [ТС] | 14 | |||||
Trwsdf, Вот сортировка слиянием.
0
|
220 / 165 / 47
Регистрация: 17.07.2012
Сообщений: 587
|
||||||
17.06.2014, 13:35 | 15 | |||||
![]() Решение
все вот теперь без лишнего)
1
|
17 / 17 / 6
Регистрация: 10.12.2013
Сообщений: 740
|
||||||
17.06.2014, 13:47 [ТС] | 16 | |||||
SlavaSSU, Спасибо вам. Приняло решение. Можно еще вопрос? Скажите, я так понял, что в этом коде
0
|
220 / 165 / 47
Регистрация: 17.07.2012
Сообщений: 587
|
|
17.06.2014, 13:53 | 17 |
если просто сказать, то нет, не сложно!!!
у вас что надо просто сдать прогу, а объяснять как он работает не обязательно, по желанию!!??)))
1
|
17 / 17 / 6
Регистрация: 10.12.2013
Сообщений: 740
|
|
17.06.2014, 13:57 [ТС] | 18 |
SlavaSSU, Нет, объяснять не нужно. Я понял, как она работает. Еще раз большое спасибо.
0
|
17.06.2014, 13:57 | |
Помогаю со студенческими работами здесь
18
Посчитать количество пар соседних элементов, которые имеют противоположные знаки Массив: Найти количество элементов, значение которых больше суммы двух соседних элементов. Количество перестановок и время затраченное на сортировку Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |