Модераторы: volvo877, Snowy, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Самый частый элемент в списке 
:(
    Опции темы
Innuendo
Дата 15.4.2007, 11:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 745
Регистрация: 24.12.2005
Где: Молдова

Репутация: нет
Всего: 6



Есть список с числовыми данными. Нужно вывести число (или числа если их много), которое встречается больше всего раз в этом списке.
Мне важен именно алгоритм.
Я могу конечно пробежаться по списку, посчитать сколько раз встречается каждый элемент и вывести наибольшее из этого нового списка полученного. Но  может быть есть более рациональный способ?


--------------------
=)
PM MAIL ICQ Jabber   Вверх
greenpc
Дата 17.4.2007, 10:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 29
Регистрация: 29.1.2007

Репутация: нет
Всего: нет



1. сортировка (метод выбирай сам)
2. 
   str_out : string;
  count_out, tmpInt, j : integer;

   str_out := IntToStr(mas[0]);
   tmpInt :=mas[0]
   j :=1;
  count_out :=j
 for i :=1 to count do   begin
   if mas[i]= tmpInt then Inc(j)
  else begin
   if j>count_out then str_out :=IntToStr(mas[i-1]);
   if j=count_out then str_out := str_out+', '+IntToStr(mas[i-1]);
   count_out :=j;
   tmpInt := IntToStr(mas[i-1]);
   j:=1;
  end;
 end;
 write('Числа :'+str_out'+ ' кол-во вхождений '+ IntToStr(count_out));


PS : не помню ф-цию перевода целого в строку (ValStr ?). 
Могут быть ошибки smile Набирал в "живую"
PS1 : mas - массив чисел, count - кол-во чесел
 
   

Это сообщение отредактировал(а) greenpc - 17.4.2007, 10:58
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi"
THandle
Rrader
volvo877

Запрещается!

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

2. Публиковать ссылки на варез

3. Оффтопить

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, THandle, Rrader, volvo877.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Object Pascal: кроссплатформенные технологии | Следующая тема »


 




[ Время генерации скрипта: 0.0387 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.