vineri, 14 septembrie 2018

Heapsort - vector

# include <stdio.h>;
# include <conio.h>;

# define MAX 100

typedef int tip[MAX];

int i,n,val;
tip h;

void Insert(tip &h,int x)
{
int i;

i=n+1;
while((i>1)&&(h[int(i/2.0)]>x)&&(h[int(i/2.0)]==0))
{
h[i]=h[int(i/2.0)];
i=(int)(i/2.0);
}
h[i]=x;
}

void HeapSort(int n)
{
int i,aux;

for(i=n;i>=2;i--)
 {
 aux=h[1];
 h[1]=h[i];
 h[i]=aux;
 }

}

void main(void)
{
clrscr();

printf("Intr nr de elemente din sir: ");
 scanf("%d",&n);
printf("Intr elementele sirului:\n");
for(i=1;i<=n;i++)
 {
 scanf("%d",&val);
 Insert(h,val);
 }

//
 //HeapSort(n);
//

printf("\nAfisez sirul sortat:\n");
for(i=1;i<=n;i++)
 printf("%d ",h[i]);

getche();
}

Niciun comentariu:

Trimiteți un comentariu