Массив записей

Общие вопросы программирования, алгоритмы и т.п.

Модератор: Модераторы

Массив записей

Сообщение crancv » 12.02.2014 19:57:52

Доброе время.
Есть массив записей :

type Resurses=record
Index:byte;
Kol_vo:uint64;
end;

Massive:array[0..255] of Resurses;

Index - содержат значения от 0 до 255; Допустим это ASCII коды.
Kol_vo - содержат различные значения от 1000 до 10000 обозначающие какое количество соответствующих ASCII кодов содержится в файле ;

Как отсортировать массив (значения Kol_vo) , чтобы значения массива расположились в порядке убывания.
!!!!! Но таким образом, чтобы значения элементов Index тоже отсортировались в соответствии с элементами Kol_vo. !!!!!


Допустим было так: А стало так:
Index Kol_vo Index Kol_vo
0 15 4 22
1 12 3 20
2 13 0 15
3 20 2 13
4 22 1 12
5 11 5 11

Добавлено спустя 12 минут 18 секунд:
Не получилось с первого раза.
Было так:
Index Kol_vo
0 15
1 12
2 13
3 20
4 22
5 11

Стало так:
Index Kol_vo
4 22
3 20
0 15
2 13
1 12
5 11
crancv
незнакомец
 
Сообщения: 6
Зарегистрирован: 12.02.2014 13:50:51

Re: Массив записей

Сообщение xdsl » 14.02.2014 11:15:21

Ничем не отличается от сортировки любого массива. алгоритм сортировки - любой, в качестве ключа - Kol_vo.
Ну например:
Код: Выделить всё
...
for i:=0 to 5 do
  for k:=0 to 4-i do
    if massive[k].kol_vo<massive[k+1].kol_vo then begin
     tmp:=massive[k];
     massive[k]:=massive[k+1];
     massive[k+1]:=tmp;
    end;
...
xdsl
постоялец
 
Сообщения: 131
Зарегистрирован: 15.01.2009 13:49:03

Re: Массив записей

Сообщение crancv » 14.02.2014 21:08:09

Спасибо. Все получилось.
crancv
незнакомец
 
Сообщения: 6
Зарегистрирован: 12.02.2014 13:50:51


Вернуться в Общее

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 14

Рейтинг@Mail.ru
cron