به مجموعه مقالات ساختار داده ها و الگوریتم ها خوش آمدید.
امیدوارم با این مجموعه به اهداف زیادی برسم. هدف اصلی من کمک به خواننده برای درک انواع ساختارهای داده است، به طوری که همه ما می توانیم یاد بگیریم که چگونه برنامه های کارآمدتری بنویسیم. ما با مفهوم نماد Big-O شروع می کنیم و اینکه چگونه هر برنامه نویسی می تواند از این ابزار ریاضی برای ارزیابی زمان اجرای الگوریتم ها استفاده کند، که در این مجموعه و همچنین الگوریتم های خود خواننده را توسعه خواهیم داد.
پس از آن، ساختارهای داده خطی را در نظر خواهیم گرفت و چگونگی مفید بودن آنها را بررسی خواهیم کرد. سپس آنها را از ساختارهای داده غیرخطی متمایز خواهیم کرد و دلایل مورد نیاز بودن آنها را همراه با مفید بودن آنها بررسی خواهیم کرد. زبانهای انتخابی ما C# و C++ خواهد بود و یک چارچوب ساختار دادههای عمومی ایجاد میکنیم، به طوری که میتوانیم از چگونگی پیادهسازی ساختارهای دادهای که امروزه در برنامههای ما استفاده میشود، توسط طراحان مجموعههای فریمورک داتنت آگاهی داشته باشیم.
برخورداری از این دانش ما را به دانشمندان و برنامه نویسان کامپیوتر ماهرتر تبدیل می کند. برخی از ساختارهای داده ای که توسط ما مورد مطالعه و پیاده سازی قرار می گیرند عبارتند از: صف ها، پشته ها، آرایه ها، لیست های پیوندی، درختان، نمودارها و جداول هش. برخی از الگوریتم هایی که در نظر گرفته و پیاده سازی خواهیم کرد، داده های ما را جستجو و مرتب می کنند. در طول مسیر، روشهای مهندسی نرمافزار خوب را توسعه خواهیم داد و همچنین نقاط قوت و ضعف الگوریتمها را دریابیم. ما بررسی خواهیم کرد که چه کردیم، چرا انجام دادیم و در طول مسیر لذت خواهیم برد. امیدوارم تا آخر سریال منتظر باشید. بنابراین، آیا آمادهاید تا در مورد ساختارهای دادهای مختلف که میشناسید و دوست دارید، اطلاعاتی کسب کنید؟
اگر چنین است، بیایید آن را ادامه دهیم و در مقاله بعدی با عنوان ساختارهای داده و الگوریتمها قسمت 2: کلمهای درباره نماد Big-O با شما ملاقات خواهم کرد.