-
Heapsort
Hello
Code:
Code:
#include "stdio.h"
#include "conio.h"
void heap(int a[], int, int n);
void sort(int a[], int n);
int main()
{
const int n = 8;
int a<img src="/emoticons/emotion-45.gif" alt="No [N]" /> = {88, 66, 77, 33, 55, 44, 22, 99};
int i;
clrscr();
sort(a, n);
for(i = 0; i );
getch();
return 0;
}
//***************
void sort(int a[], int n)
{
int i, t;
for(i = n/2 - 1; i >= 0; i--)
heap(a, i, n);
for(i = n - 1; i > 0; i--)
{
t = a[0];
a[0] = a<img src="/emoticons/emotion-55.gif" alt="Idea [I]" />;
a<img src="/emoticons/emotion-55.gif" alt="Idea [I]" /> = t;
heap(a, 0, i);
}
}
//***************
void heap(int a[], int k, int n)
{
int t, j;
t = a[k];
while(k a[j])
break;
a[k] = a[j];
k = j;
}
a[k] = t;
}
It is said:
In array ,Leaves are saved in a<img src="/emoticons/emotion-45.gif" alt="No [N]" />..a[n/2],Why?
And it is said:
So first loop in sort () ,runs on a[0] ...a[n/2-1].Why?
May someoen explain about the second loop?
Thanks in advance
-
The first thing to do is edit all those img src= bits which are in your code to be actually what you have in your text editor. Your code makes no sense.
Even with that, there are glaring syntax errors which mean it won't even compile, let alone run.
-
>It is said:
Where? I'm sure it is said better in many places, including here, which you might want to check out because the concept behind the algorithm is explained in detail.