Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Сортировка массива [D7, WinXP]


Knoxville ©   (2005-07-21 18:13:00) 

Здравствуйте!
Такая ситуация: массив цисел, типа
arr[0] := 35;
arr[1] := 41;
arr[2] := 28;
arr[3] := 1;
arr[4] := 11;

Как мне их отсортировать, но не так чтобы получилось 1, 11, 2, 23, 3, а по порядку 1, 2, 3, 11, 23?
Заранее спасибо.


SergP   (2005-07-21 20:22:00) [1]


>  [5] Knoxville   (21.07.05 18:46)
> Так знает кто-то как сортировать массивы?


Все знают... В самом крайнем случае можно самому додуматься до такого варианта как:
1. пробегаемся по массиву и меняем местами пары смежных значений если они стоят не в нужном порядке.

2. Если за этот "проход" хоть одну пару пришлось поменять, то переходим к п.1

Это самый простое и очевидное решение. Но самое медленное.
Есть другие алгоритмы. С тремя из них, в том числе с алгоритмом быстрой сортировки можно познакомиться здесь:
...\demos\threads\ - эта папка с демкой находится там где у тебя дельфя установлена.


Fay   (2005-07-21 19:08:00) [2]

2 Knoxville   (21.07.05 19:03) [9]
http://www.yandex.ru/yandsearch?rpt=rad&text=%C0%EB%E3%EE%F0%E8%F2%EC%FB+%F1%EE%F0%F2%E8%F0%EE%E2%EA%E8


Knoxville   (2005-07-21 19:03:00) [3]

2Fay,
Логично, а программно как это можно сделать, пожалуйста.
Может ссылку дадите


TButton   (2005-07-21 19:00:00) [4]

ну я знаю, только я ничего не скажу
ибо забыл =)
а вообще, Fay достаточно грамотно всё описал


Fay   (2005-07-21 18:56:00) [5]

2 Knoxville   (21.07.05 18:26) [4]
Всё просто.
Нужно элементы с меньшим значением поместить перед элементами с большим значением.


Александр Иванов   (2005-07-21 18:51:00) [6]

Знает большинство, помогать захотят в таком вопросе единицы.


Knoxville   (2005-07-21 18:46:00) [7]

Так знает кто-то как сортировать массивы?


Knoxville   (2005-07-21 18:26:00) [8]

Суть вопроса - КАК отсортировать массив?


Knoxville   (2005-07-21 18:21:00) [9]

Массив - строки. Вообще мне надо знать как сам массив сортировать. Сортировал через TStringList - как раз не по порядку и сортировало


Fay   (2005-07-21 18:21:00) [10]

2 Knoxville   (21.07.05 18:13)
Отсортируйте массив по возрастанию значения элемента.


alexander_ua   (2005-07-21 18:15:00) [11]

А в чем проблема то? По-моему сложность возникает отсортировать, чтобы получилось "1, 11, 2, 23, 3", а не по порядку. Или у Вас элементы массива - строки?


Наверх

Титульная страница Поиск, карта сайта Написать письмо