Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 10

‫‪-*/‬‬

‫تراكيب بيانات ‪DATA STRUCTER‬‬

‫هياكل البيانات ‪Data Structure‬‬

‫محاضرة رقم (‪)4‬‬

‫خوارزمية الترتيب باالدخال‬

‫اعداد ‪:‬‬
‫أ‪ /‬رنده عبد الرحمن محمد خالد‬
‫خوارزمية الترتيب باإلدخال ‪Insertion Sort‬‬
‫‪ ‬هي الطريقة النمطية التي يستخدمها الناس لترتيب أشياءهم‪ ,‬فهي تعتمد على‬
‫جمع العناصر المراد ترتيبها‪ ,‬ثم نبدأ في أخذ العناصر واحدا تلو اآلخر و‬
‫نضعه في ترتيبه المناسب‪ ,‬و هكذا حتى نصل إلى الترتيب النهائي‪.‬‬
‫‪ ‬مالحظـة‪ /‬العنصر األول ال يتم تغيير موضعه إال بعد الدورة األولى على‬
‫األقل‪ ,‬بينما في البداية فهو يعتبر الوحيد و بالتالي موضعه مناسب‪ ,‬و يتم‬
‫تحريكه فقط إن ظهر عنصر فيما بعد أصغر منه‪.‬‬
‫‪ ‬تختلف فكرة هذه الخوارزمية في الترتيب عن الترتيب الفقاعي والترتيب‬
‫باالختيار اذ انه ال نستخدم فكرة دالة التبديل (‪ )swap‬يستعيض عنها بإزاحة‬
‫العناصر وذلك لخلق مساحة او موقع فارغ للعنصر الجديد (االصغر )‪.‬‬

‫أ‪/‬رنده عبد‬ ‫تراكيب البيانات‬


‫‪10/24/2023‬‬ ‫‪ 2‬الرحمن محمد خالد‬
‫‪Insertion Sort‬‬

‫إلدخال الرقم ‪,12‬نحتاج الي خانة للرقم ‪12‬‬


‫وذلك بتحريك الرقم ‪ 36‬ثم ‪24‬‬

‫‪6‬‬ ‫‪10 24 3‬‬


‫‪6‬‬

‫‪12‬‬

‫أ‪/‬رنده عبد الرحمن‬ ‫تراكيب البيانات‬


‫ا‬ ‫‪10/24/2023‬‬ ‫محمد خالد‬ ‫‪3‬‬
‫‪Insertion Sort‬‬

‫‪6‬‬ ‫‪10 24‬‬ ‫‪36‬‬

‫‪12‬‬

‫‪10/24/2023‬‬
‫أ‪/‬رنده عبد الرحمن محم‬ ‫تراكيب البيانات‬ ‫‪4‬‬
‫د خالد‬
‫‪Insertion Sort‬‬

‫‪6‬‬ ‫‪10‬‬ ‫‪24 3‬‬


‫‪6‬‬

‫‪12‬‬

‫أ‪/‬رنده عبد ال‬ ‫تراكيب البيانات‬ ‫‪10/24/2023‬‬ ‫‪5‬‬


Insertion Sort
input array

3 1 6 4 2 5

)sub-arrays( ‫في كل خطوة او دورة يتم تقسيم المصفوفة الي جزئيين‬

left sub-array right sub-array

sorted unsorted

‫رنده عبد ال‬/‫أ‬ ‫تراكيب البيانات‬ 10/24/2023 6


‫‪Insertion Sort‬‬

‫أ‪/‬رنده عبد ال‬ ‫تراكيب البيانات‬ ‫‪10/24/2023‬‬ ‫‪7‬‬


‫خوارزمية ‪Insertion Sort‬‬
‫رتبي مصفوفة االرقام االتية تصاعديا من االصغر الي األكبر‬

‫أ‪/‬رنده عبد الرحمن محمد خالد‬ ‫تراكيب البيانات‬


‫‪10/24/2023‬‬ ‫‪8‬‬
INSERTION-SORT
Alg.: INSERTION-SORT(A)
for j ← 2 to n
do key ← A[ j ]
A[1 . . j -1] ‫ في التسلسل المرتب‬A[ j ]‫ادخلي‬

i←j-1
while i > 0 and A[i] > key
do A[i + 1] ← A[i]
i←i–1
1 2 3 4 5 6 7 8

a1 a2 a3 a4 a5 a6 a7 a8
A[i + 1] ← key
key
‫رنده عبد ال‬/‫أ‬ ‫تراكيب البيانات‬ 10/24/2023 9
‫انتهت المحاضرة بحمد هللا‬

‫أ‪/‬رنده عبد ال‬ ‫تراكيب البيانات‬ ‫‪10/24/2023‬‬ ‫‪10‬‬

You might also like