Поиск:

Ответ в темуСоздание новой темы Создание опроса
> [Ada] BINSORT aka BUCKET SORT, алгоритм код. 
V
    Опции темы
VitaL
Дата 20.3.2009, 03:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Кто нибудь сталкивался с сортировкой бинсорт в АДА??? 

или подскажите где можно посмотреть код плз  smile 
PM MAIL WWW Skype   Вверх
volvo877
Дата 23.3.2009, 14:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2073
Регистрация: 15.11.2004

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



Этот?
Код
with Ada.Text_IO; use Ada.Text_IO;

procedure b_sort is
   type
     Vector is array(Positive range <>) of Integer;
   
   procedure bucketSort(A: in out Vector; n, max: integer) is
      buckets: Vector(1 .. max) := (others => 0);
      ix: integer;
   begin
      for i in A'Range loop
         buckets(A(i)) := buckets(A(i)) + 1;
      end loop;
      
      ix := 1;
      for j in 1 .. max loop
         for k in reverse 1 .. buckets(j) loop
            A(ix) := j; ix := ix + 1;
         end loop;
      end loop;
   end bucketSort;
   
   procedure print(A: Vector) is
   begin
      for i in A'Range loop
         Put(Integer'Image(A(i)) & " ");
      end loop;
   end print;
   
   size: constant integer := 8;
   subtype index is Integer range 1 .. size;
   A: Vector(index) := (25, 54, 73, 11, 83, 52, 23, 91);
   max: integer;
begin
   max := A(1);
   for i in A'Range loop
      if A(i) > max then max := A(i); end if;
   end loop;

   bucketSort(A, size, max);
   print(A);
end b_sort;

PM MAIL   Вверх
VitaL
Дата 24.3.2009, 00:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



volvo877, cпасиб за отклик, что то он подозрительно прост, на днях посмотрю и отпишусь  smile 
PM MAIL WWW Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Добро пожаловать в раздел "Другие языки" форума Vingrad!

Void
Void

Раздел посвящён различным языкам программирования, для которых (в силу невысокой популярности) нет отдельного раздела (GPSS, Lua, MATLAB, Ada, Forth, Smalltalk, Tcl, REXX, AWK и др.)

  • Обязательно следуйте правилам Форума.
  • Пожалуйста, прочитайте и следуйте рекомендациям по работе в разделе и навигации по Форуму.
  • Для вставки текстов исходных кодов используйте подсветку синтаксиса из выплывающего списка Код в форме ответа. Если Ваш язык в списке не представлен, то используйте тег: [code=ваш_язык]код[/code], например, [code=ada]код[/code]. Если в будущем подсветка синтаксиса для указанного языка будет реализована, исходный код преобразится.
  • Помните, один вопрос - одна тема.

Приятного времяпрепровождения! С уважением, Void, kemiisto .

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


 




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


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

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