الجزء الثاني
Sorting and order statistics مقدمة في ا لباب الأول اتعرضنا لمقدمة عن الـ algorithms عرفنا فيها يعني إيه algorithms وإيه مدى أهميتها واستخداماتها , وشفنا الـ sorting problem وشفنا 2 algorithms بيحلوها هما الـ insertion sort وال merge sort وكل واحد فهمنا الـ design approach ( طريقة التصميم ) اللي اتبنا على أساسها وهما بالترتيب incremental approach و divide-and-conquer approach , كمان اتعرضنا لأساسيات مهمة جدا هتقابلنا كتير في دراسة الـ algorithms زي الـ asymptotic notation وال recurrence وال probabilistic analysis and randomized algorithms . في الباب التاني هنكمل على الـ sorting problem وهناخد more advanced algorithms بتحلها , في الباب الأول أقصى تقدم وصلناله هو الـ merge sort algorithm اللي كان الـ running time بتاعه Θ(nlgn) , في الباب التاني هنشوف algorithms الـ running time بتاعها linear يعني Θ(n) . Sorting problem نفتكر مع بعض ازاي بنعرف أي problem ؟ بنعرفها من خلال تحديد الـ input وال output , يعني عندنا إيه وعايزين نوصل لإيه , أما هنوصل إزاي ف...