0 / 0 / 0
Регистрация: 15.02.2012
Сообщений: 29
1

блочная (карманная ) сортировка

16.05.2012, 20:04. Показов 1468. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
помогите пожалуйста, мне нужно описание каждой сточки ,или хотя бы чего нибудь на понятном языке. Потому что не могу понять какой это язык.

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
program bogosort (input, output);
 const max=10;   {*Tamanho do vetor *}
 type vetor=array[1..max] of integer;
 var lista, lista1: vetor;
     i: integer;
     j: boolean;
     pos: integer;
 
     function teste(var proto: vetor): boolean;     {*Verifica se o vetor NГO estб ordenado.*}
     var i: integer;
     begin
         teste:=true;
         for i:=2 to max do
             if (proto[i]<proto[i-1]) then
                 break;
         if (i=max) and (proto[max]>=proto[max-1]) then
             teste:=false;
     end;
 
 begin
     randomize;    {*Inicializa o gerador de numeros aleatуrios *}
     writeln('Escreva abaixo os ', max,' elementos do vetor:');
     for i:=1 to max do
     begin
         read(lista[i]);  
         lista1[i]:=lista[i];
     end;
     for i:=1 to max do           {*Escreve o vetor recebido *}
         write(lista1[i],' ');
     writeln;
     while teste(lista1) do    {*Enquanto o vetor nao esta ordenado...*}
     begin
         j:=true;
         for i:=1 to max do     {*Inicializa o vetor auxiliar *}
             lista1[i]:=0;
         for i:=1 to max do   {* Este loop preenche aleatoriamente o vetor auxiliar *}
         begin
             j:=true;
             while j do {* Este while garante que nenhum dado serб sobrescrito *}
             begin
                 pos:= random(max)+1;    {* Gera posiзгo aleatуria *}
                 if lista1[pos]=0 then     {*Garante que a posiзгo nгo estб ocupada *}
                 begin
                     lista1[pos]:=lista[i];
                     j:=false;
                 end;
             end;
         end;
         for i:=1 to max do {* Imprime na tela a tentativa *}   
             write(lista1[i],' ');
         writeln;       
     end;
     write('A LISTA FOI ORDENADA!');
 end.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
16.05.2012, 20:04
Ответы с готовыми решениями:

Блочная Карманная Сортировка
сортировать двумерный массив Блочной или Карманной Сортировкой. Кроме того нужно разместить...

Карманная сортировка
Здравствуйте, нужно написать програму на Паскале, которая сортирует масив методом Блочной...

Карманная сортировка
Есть 2 процедуры - 1 для сортировки карманов вторая для сортировки массиву методом карманной...

Блочная сортировка
Помогите кто может, плз. Скиньте если есть алгоритмы блочной СОРТИРовки и Bogosort

2
Почетный модератор
64299 / 47594 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
16.05.2012, 20:21 2
Вот есть у меня подробное описание алгоритма к коду на С++ и программа на Паскале, написанная по этому коду.
Вложения
Тип файла: zip Алгоритм.zip (156.2 Кб, 58 просмотров)
1
0 / 0 / 0
Регистрация: 15.02.2012
Сообщений: 29
16.05.2012, 22:05  [ТС] 3
спасибо Вам огромное!!!

Добавлено через 1 час 9 минут
я просто не пойму зачем там ...
j=true
зачем есть lista и lista1
ну и как я поняла ,то функция teste -это проверка отсортирован ли массив...
0
16.05.2012, 22:05
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
16.05.2012, 22:05
Помогаю со студенческими работами здесь

Карманная сортировка
Помогите почему не работает ? не работает sort(b.begin(), b.end()); ?? #include &lt;iostream&gt;...

Карманная сортировка
Помогите разработать программную реализацию алгоритма карманной сортировки вещественных чисел из...

Карманная сортировка динамических массивов
Карманная сортировка. Создаете 2 кармана. В 1-й карман включает элементы массива. Во 2-й ...

Карманная сортировка для списка дженериков
Помогите с этой темой, вообще не врубаюсь, как(( Если взять сортировку чисел, то, вроде, не трудно...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru