السلام عليكم ورحمة الله وبركاته
اسعد الله أوقاتكم بكل خير
في الكود التالي عملت برمجه بلغة c++
لخوارزمية heapsort
والغرض من هذه البرمجه
طباعة كل عنصر في كل مرحله"level''
بعد مرحلة الترتيب
الكود يحتوي بعض الاخطاء أرجو من أساتذتي الكريمه مساعدتي فيه
#include <iostream.h>
void swap (int a, int B);
{
int temp;
temp=a;
a=b;
b=temp;
}
void buildMaxHeap( int A[]);
{ heapSize=lenght;
for (i=(lenght[A]/2);i>=1;i--);
MaxHeapify(A[],i);
}
void MaxHeapify(int A[9] ,int j );
{
int left=(2*i);
int right =((2*i)+1);
int l=left;
int r= right;
if(l>=9 & A[l]>A)
int largest=l;
else largest=i;
else if(r>=9 & A[l]>A[largest])
largest=r;
else if (largest!=i);
{ swap(A,A[largest]);
MaxHeapify(A[],largest);
}
}
void main ( void )
{
int lenght=9;
int A[9]={25,13,20,8,7,17,2,5,4};
buildMaxHeap(A);
for( int i=9;i>=2;i++);
{swap(A[1],A);
int heapSize=lenght-1;
MaxHeapify(A[],1);
}
}أنا أريده ان يطبع مايلي
level 1 25 level 2 13 20 level 3 8 7 17 2 level 4 5 4