Автор ЂЮса задал вопрос в разделе Другие языки и технологии
Кто нибудь может рассказать про сортировку подсчётом на примере??? и получил лучший ответ
Ответ от Vasiliy Ganov[мастер]
У тебя есть массив A[10], состоящий из элементов 7, 3, 5, 5, 3, 7, 7, 3, 5, 5.
Создаем вспомогательный массив C[10], в котором все элементы нулевые.
I) Последовательно читаем элементы массива A. Для каждого A[ i ] увеличиваем на единицу С [A[ i ]] (т. е. элемент массива C, имеющий номер, равный значению элемента массива А) :
A 7 3 5 5 3 7 7 3 5 5
С 0 0 0 0 0 0 0 0 0 0
1) 0 0 0 0 0 0 0 1 0 0 - мы увеличили 7-ой элемент С, т. к. первый элемент А равен 7
2) 0 0 0 1 0 0 0 1 0 0 - мы увеличили 3-ой элемент С, т. к. второй элемент А равен 3
3) 0 0 0 1 0 1 0 1 0 0
4) 0 0 0 1 0 2 0 1 0 0
5) 0 0 0 2 0 2 0 1 0 0
6) 0 0 0 2 0 2 0 2 0 0
7) 0 0 0 2 0 2 0 3 0 0
8) 0 0 0 3 0 2 0 3 0 0
9) 0 0 0 3 0 3 0 3 0 0
10)0 0 0 3 0 4 0 3 0 0 - так выглядит после всех итераций массив С
Означает это, что у нас есть 3 тройки, 4 пятерки и 3 семерки.
II) Теперь нужно пройти по массиву С, записывая в массив A текущий номер i элемента массива С С [ i ] раз:
A 7 3 5 5 3 7 7 3 5 5
С 0 0 0 3 0 4 0 3 0 0
1) 7 3 5 5 3 7 7 3 5 5 - записываем в массив A текущий номер 0 элемента массива С 0 раз (т. е. не записываем)
2) 7 3 5 5 3 7 7 3 5 5 - записываем в массив A текущий номер 1 элемента массива С 0 раз
3) 7 3 5 5 3 7 7 3 5 5 - записываем в массив A текущий номер 2 элемента массива С 0 раз
4) 3 3 3 5 3 7 7 3 5 5 - записываем в массив A текущий номер 3 элемента массива С 3 раза
5) 3 3 3 5 3 7 7 3 5 5 - записываем в массив A текущий номер 4 элемента массива С 0 раз
6) 3 3 3 5 5 5 5 3 5 5 - записываем в массив A текущий номер 5 элемента массива С 4 раза
7) 3 3 3 5 5 5 5 3 5 5 - записываем в массив A текущий номер 6 элемента массива С 0 раз
8) 3 3 3 5 5 5 5 7 7 7 - записываем в массив A текущий номер 7 элемента массива С 3 раза
МАССИВ ОТСОРТИРОВАН!
Vasiliy Ganov
(950)
незачто, обращайтесь 🙂
Программа сортировки есть на
эти видео про разные виды сортировок)
<a rel="nofollow" href="http://www.youtube.com/watch?v=Ns4TPTC8whw" targe
Кто нить знает кто такой тальман и чем он занимается?
Тальман
Характеристика работ. Прием и сдача экспортно-импортных, каботажных, местных грузов
подробнее...
Какой чай самый лучший ?
Согласно подсчетам экспертов, можно выделить 8 самых дорогих и изысканных сортов чая
8
подробнее...
Что такое грейдерская система оплаты труда, где можно в инете посмотреть?
Грейдинг (от англ. grading — классификация, сортировка, упорядочение) — это система должностных
подробнее...
Каковы действия членов участковой избирательной комиссии в случае обнаружения в переносном ящике для голосования
Требовать принятия решения о признании всех бюлетений недействительными. Это только при подсчете
подробнее...
Что такое мобильный агент? И как его подключить?
Мобильный Агент - это специальная версия программы Mail.Ru Агент для мобильных телефонов. При
подробнее...
Как правильно составить отчёт о проделанной работе?
Отчёт, пожалуй, следует начать с обозначения цели, поставленной перед Вами и задач, которые надо
подробнее...