Форум программистов, компьютерный форум, киберфорум
Наши страницы

Пирамидальная сортировка с вопросами - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ программирование с использованием структур http://www.cyberforum.ru/cpp-beginners/thread219108.html
нужно решить задачу: В справочной аэропорта хранится расписание вылета самолетов на сле-дующие сутки. Для каждого рейса указаны номер рейса, тип самолета, пункт назначения, время вылета. Вывести все...
C++ Нужно срочно решить масивы!!! 1)Сумму элементов массива расположить между первым и последним отрицательным элементом. 2)Целочисленный массив К(n,m) заполнить нулями и еденицами расположивши их в шахматном порядке. http://www.cyberforum.ru/cpp-beginners/thread219101.html
C++ Работа с битами.
Здрасте. Дана задача: Определить на сколько в числе А больше значущих битов, что равны единице, чем битов, что равны нулю. Помогите пожалуйста. Мыслей 0. Все методические указания, что давали вообще...
Методы поиска в различных структурах данных C++
у мя просьба,есть ли методы поиска???(с++/алгоритмы):read: 1)Таблица символов, 2)Деревья бинарного поиска, 3)Хеширование. заранее спс......
C++ С++/Сортировка слияние/(Что выполняет...?;(плз)/ http://www.cyberforum.ru/cpp-beginners/thread219089.html
Большая просьба,помоги мне ответить Это пирамидальная сортировка с++ Заранее спасибо #include<conio.h> #include <stdio.h> #include <stdlib.h> #include <time.h>// Что выполняет?
C++ польская запись,нашел какой то код char * pol(char * in, char * out) { st *OPR=NULL; int k,point; k=point=0; while(in!='\0' && in!='=') // пока не дойдем до равно '=' { if(in==')') // если очередный символ - ')' {... подробнее

Показать сообщение отдельно
$ereg@
0 / 0 / 0
Регистрация: 22.12.2010
Сообщений: 7

Пирамидальная сортировка с вопросами - C++

23.12.2010, 22:10. Просмотров 1191. Ответов 0
Метки (Все метки)

Большая просьба,помоги мне ответить
Это пирамидальная сортировка с++
Заранее спасибо


#include<conio.h>
#include <stdio.h>
#include <stdlib.h>
#include <time.h>// Что выполняет?


int x[11];

void swap(int *a, int *b)

{
int temp=*a;
*a=*b;
*b=temp;
}

void SiftUp(int n)

{
int i = n , p ; // р - для чего нужна переменная?
while ( i <1)
{
p = i /2;
if ( x [ p ]>= x [ i ]) break ;
swap(&x[p], &x[i]);
i = p ;
}

}

void SiftDown(int n)

{
int i=1,c;
while (( c =2* i )<= n ) // что выполняют операторы?
{
if (( c +1)<= n ) // что выполняют операторы?
if ( x [ c +1]< x [ c ])
c = c +1; // зачем?
if(x[i]<=x[c]) break;
swap (& x [ c ],& x [ i ]);
i=c;

}

}


main()

{
int i;
for(i=1; i<=10; i++) // что выполняет?
x[i]=rand();
printf("\n Do sortirovki :\n");
for(i=1; i<=10; i++)
printf("%d ",x[i]);
for(i=2; i<=10; i++)
SiftUp(i);
for(i=10; i>=2; i--)

{
swap(&x[1], &x[i]); //В чем смысл вызова этой функции в этом месте программы
SiftUp(i-1);
}

printf("\n Posle sortirovki :\n");
for(i=1; i<=10; i++)
printf("%d ",x[i]);

}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.