الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

Heapsort

بدأه ميلاد جديد في 4 يونيو 2009 · 2 رد · 494 مشاهدة · في الأسئلة المجابة
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ورحمة الله وبركاته

اسعد الله أوقاتكم بكل خير

في الكود التالي عملت برمجه بلغة 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
#2

وينكم الله يرضى عليكم ردوا علي

#3

هذي الخوارزميات الجاهزه الي قمت ببرمجتها

heap_algorithem.rar

تم تعديل هذه المشاركة بواسطة ميلاد جديد في 4 يونيو 2009 في 18:57