Pseudo Code
الدرس 4 من 9 في دورة Merge Sort - سلسلة DSA على Coddy.
mergeSort(array):
if length(array) <= 1:
return array
mid = length(array) / 2
left = mergeSort(array[0..mid])
right = mergeSort(array[mid..end])
return merge(left, right)
merge(left, right):
result = []
while left and right both still have elements:
if left[0] <= right[0]:
move the front of left into result
else:
move the front of right into result
append whatever remains of left
append whatever remains of right
return resultتعمل دالتان معاً:
- تستمر mergeSort في تقسيم المصفوفة حتى تصبح الأجزاء مرتبة بشكل بديهي، ثم تعتمد على merge لدمجها.
- تمر merge عبر قائمتين مرتبتين في آن واحد، وتأخذ دائماً العنصر الأصغر من المقدمة، بحيث تظل القائمة المدمجة مرتبة.
جرّب بنفسك
لا يتضمّن هذا الدرس تحدّيًا برمجيًا.
يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس Merge Sort - سلسلة DSA
2The Algorithm
How it works?Pseudo CodeImplementation (Part 1)Implementation (Part 2)