سرفصلها :
1- مفاهیم: زمان اجرا، الگوریتمها، بازگشتی.
2- آرایهها و ماتریسها
3- پشته و صف
4- اشارهگرها و لیستهای پیوندی
5- كاربرد سیستمهای پیوندی
6- درختها
7- گرافها
8- مرتب سازی و جستجو
فصل اول: مفاهیم ساختمان داده و الگوریتم
مهندسی نرم افزار: بررسی، تعریف و طراحی و پیاده سازی و پشتیبانی نرم افزارهای كامپیوتری را گویند.
برنامهها: دادهها الگوریتمها
با توجه به تعریف مهندس نرم افزار نتیجه میگیریم كه وظیفه اصلی مهندسی نرم افزار طراحی و پیاده سازی برنامههای مناسب و پشتیبانی آنها میباشد.
تعریف داده: مقدار یا مجموعهای از مقادیر را اصطلاحاً گویند.
ساختمان داده: یك مدل منطقی یا ریاضی برای نگهداری و نمایش دادهها را گویند.
ویژگیهای یك ساختمان داده مناسب:
1- سادگی: به این معناست كه بتوانیم برای ساختمان داده مورد نظر الگوریتمهای سادهای را طراحی كنیم.
2- استغنا (بینیازی): هر قدر كه ساختمان داده مورد نظر بتواند به دنیای واقعی نزدیك باشد استغنای آن بیشتر است.
الگوریتم: مجموعه دستورالعملهایی كه با اجرای گام به گام آنها هدف خاصی دنبال میشود.