کتاب Data Structures and Algorithms with the C++ STL: A guide for modern C++ practitioners (ساختارهای داده و الگوریتمها با C++ STL: راهنمای مدرن مختصصان C++) کاوش کاملی از مؤلفههای STL ارائه میکند که ساختارهای دادههای اساسی، الگوریتمهای پیشرفته و ویژگیهای همزمانی را پوشش میدهد.
در ادامه مقدمهای از کتاب Data Structures and Algorithms with the C++ STL را از زبان نویسنده شرح خواهیم داد.
مقدمهای بر کتاب Data Structures and Algorithms with the C++ STL:
به \”ساختار دادهها و الگوریتمها با C++ STL\” خوش آمدید!
کتاب Data Structures and Algorithms with the C++ STL منبعی است که هدف آن عمیقتر کردن درک شما از ساختارهای داده و الگوریتمها با استفاده از ابزارهای قدرتمند ارائه شده توسط کتابخانه استاندارد قالب (STL) در ++C است. در این صفحات، شما موارد زیر را بررسی خواهید کرد:
- std:: vector: استفاده پیشرفته از مخزنهای توالی و مشارکتی
- مباحث عمیق در مورد الگوریتمهای STL و پیشرفتهای آنها با ویژگیهای ++C مدرن
- نگاهی عمیق به ایجاد انواع و الگوریتمهای سازگار با STL
کتاب Data Structures and Algorithms with the C++ STL به پنج بخش تقسیم شده است که هر بخش بر جنبه خاصی از STL تمرکز دارد:
بخش ۱: تسلط بر std:: vector: این بخش به استفاده اساسی از بردارها و دستکاری آنها با الگوریتمهای STL میپردازد.
بخش ۲: درک ساختارهای داده STL: این بخش دانش شما را با مخزنهای توالی، مشارکتی مرتب و غیرمرتّب و آداپتورهای مخزن گسترش میدهد.
بخش ۳: تسلط بر الگوریتمهای STL: این بخش پوشش جامع الگوریتمهای اساسی، عددی و مبتنی بر محدوده را با تمرکز بر بهترین شیوهها ارائه میدهد.
بخش ۴: ایجاد انواع و الگوریتمهای سازگار با STL: این بخش شما را در توسعه انواع و الگوریتمهای خودتان راهنمایی میکند که به طور یکپارچه با STL ادغام میشوند.
بخش ۵: ساختارهای داده و الگوریتمهای STL: زیر کاپوت: این بخش بینشهای پیشرفتهای در مورد ایمنی استثنا، ایمنی رشته، موازیسازی و تعامل STL با آخرین ویژگیهای ++C مانند مفاهیم و coroutine ارائه میدهد.
هر فصل به گونهای طراحی شده است که بر روی مفاهیم معرفی شده قبلی بنا شود و یک تجربه یادگیری منسجم را تضمین کند. در پایان کتاب Data Structures and Algorithms with the C++ STL، شما باید در کاربرد عملی STL مهارت داشته باشید و با اطمینان و تخصص برای مقابله با چالشهای نرمافزاری مدرن مجهز شوید.
بیشتر بخوانید: کتاب Beautiful C++
کتاب Data Structures and Algorithms with the C++ STL برای چه کسانی است؟
این کتاب برای توسعهدهندگان ++C در سطح متوسط نوشته شده است که میخواهند مهارتها و دانش خود را در به کارگیری اجزای STL برای حل کارآمد مشکلات پیچیده بهبود بخشند.
کتاب Data Structures and Algorithms with the C++ STL چه چیزی را پوشش میدهد؟
فصل ۱: اصول اولیه std:: vector: این فصل std:: vector را معرفی میکند، آن را با آرایههای به سبک C مقایسه میکند و اعلام، مقداردهی اولیه و دستکاری عناصر آن را نشان میدهد.
فصل ۲: تسلط بر تکرارگرها با std:: vector: انواع مختلف تکرارگرها در STL و کاربرد آنها در زمینههای std:: vector را بررسی میکند، از جمله ایجاد تکرارگر سفارشی.
فصل ۳: تسلط بر حافظه و تخصیصدهندهها با std:: vector: ظرفیت بردار در مقابل اندازه، تکنیکهای بهینهسازی حافظه و طراحی تخصیصدهندههای سفارشی برای عملکرد بهتر را مورد بحث قرار میدهد.
فصل ۴: تسلط بر الگوریتمها با std:: vector: به عملیات الگوریتمی روی بردارها مانند مرتبسازی و جستجو و اهمیت درک باطلسازی تکرارگر میپردازد.
فصل ۵: دفاع از std:: vector: جنبههای عملکرد، کاربردهای عملی و تطبیقپذیری std:: vector را به عنوان یک مخزن پیشفرض STL بررسی میکند.
فصل ۶: استفاده پیشرفته از مخزنهای توالی
این فصل از کتاب Data Structures and Algorithms with the C++ STL، سناریوهای استفاده پیشرفته و بهترین شیوهها برای مخزنهای توالی مانند std::array
، std::deque
و سایر موارد را تجزیه و تحلیل میکند.
فصل ۷: استفاده پیشرفته از مخزنهای مشارکتی مرتبشده
این فصل پیچیدگیهای مخزنهای مشارکتی مرتبشده مانند std::set
و std::map
و ملاحظات منحصر به فرد عملکرد آنها را بررسی میکند.
فصل ۸: استفاده پیشرفته از مخزنهای مشارکتی غیرمرتّب
این فصل از کتاب Data Structures and Algorithms with the C++ STL، مخزنهای مشارکتی غیرمرتّب را بررسی میکند، عملکرد داخلی آنها و موارد استفادهشان را برجسته میکند.
فصل ۹: استفاده پیشرفته از آداپتورهای مخزن
این فصل بر روی آداپتورهای مخزن مانند std::stack
و std::queue
تمرکز میکند، در مورد پیادهسازی آنها و زمان استفاده مؤثر از آنها بحث میکند.
فصل ۱۰: استفاده پیشرفته از نماهای مخزن
این فصل از کتاب Data Structures and Algorithms with the C++ STL، نماهای مخزن مانند std::span
و std::mdspan
را معرفی میکند، و بینشهایی در مورد کاربرد و مزایای عملکردی آنها ارائه میدهد.
فصل ۱۱: الگوریتمهای اساسی و جستجو
این فصل الگوریتمهای اساسی مرتبسازی و جستجو در STL و کاربردهای عملی آنها را پوشش میدهد.
فصل ۱۲: دستکاری و تبدیل
این فصل از کتاب Data Structures and Algorithms with the C++ STL، تکنیکهای تبدیل داده در مخزنهای STL را شرح میدهد، از جمله ظرافتهای کپی کردن، جابهجایی و حذف عناصر.
فصل ۱۳: عملیات عددی و مبتنی بر محدوده
این فصل به بررسی عملیات ریاضی و کاربردهای آنها روی مجموعههای دادهای خاص (محدوده) میپردازد و نشان میدهد که چگونه میتوانند پیچیدگی الگوریتمی را بهینه کنند.
فصل ۱۴: جایگشتها، پارتیشنبندیها و هیپها
نگاهی عمیق به الگوریتمهای سازماندهی داده، مانند پارتیشنبندی و عملیات مربوط به هیپ (دادهای درختی با ساختار خاص)، در کتابخانه استاندارد قالب (STL) ارائه میدهد.
فصل ۱۵: STL مدرن با محدودهها
رویکرد مدرن به STL با استفاده از محدودهها را مورد بحث قرار میدهد که قابلیت ترکیب و کارایی الگوریتمها را بهبود میبخشد.
فصل ۱۶: ایجاد مخزنهای نوعمند STL
مراحل ایجاد مخزنهای دادهای سفارشی سازگار با الگوریتمهای STL و اجزای ضروری مورد نیاز برای یکپارچگی کامل را راهنمایی میکند.
فصل ۱۷: ایجاد الگوریتمهای سازگار با STL
جزئیات توسعه الگوریتمهای سفارشی را که به طور یکپارچه با مخزنهای STL کار میکنند و با اصول STL مطابقت دارند، ارائه میدهد.
فصل ۱۸: صفات نوع و سیاستها
به موضوعات پیشرفته صفات نوع و سیاستها که در ساخت کد الگوی تطبیقپذیر و کارآمد کلیدی هستند، میپردازد.
فصل ۱۹: ایمنی استثنا
سطوح ایمنی استثنا تضمینشده توسط STL را بررسی میکند و نحوه نوشتن کد robust سازگار با STL با استفاده از کلیدواژه `noexcept` را توضیح میدهد.
فصل ۲۰: ایمنی رشته و موازیسازی با STL
ویژگیهای موازیسازی و ایمنی رشته مخزنهای STL، جلوگیری از شرایط مسابقه (اتفاق ناخواسته در برنامههای چند رشتهای) و بهترین شیوهها برای برنامهنویسی چند رشتهای را مورد بحث قرار میدهد.
فصل ۲۱: تعامل STL با مفاهیم و coroutine ها
تعامل بین STL و آخرین ویژگیهای ++C مانند مفاهیم و coroutine ها را بررسی میکند و هم افزایی آنها را نشان میدهد.
فصل ۲۲: الگوریتمهای موازی با STL
خطمشیهای اجرایی برای الگوریتمهای موازی در STL، نقش کلیدواژه `constexpr` و ملاحظات مربوط به عملکرد و کارایی را معرفی میکند.
سرفصلهای کتاب Data Structures and Algorithms with the C++ STL:
- Data Structures and Algorithms with the C++ STL
- Contributors
- About the author
- About the reviewer
- Preface
- Part 1: Mastering std::vector
- Chapter 1: The Basics of std::vector
- Chapter 2: Mastering Iterators with std::vector
- Chapter 3: Mastering Memory and Allocators with std::vector
- Chapter 4: Mastering Algorithms with std::vector
- Chapter 5: Making a Case for std::vector
- Part 2: Understanding STL Data Structures
- Chapter 6: Advanced Sequence Container Usage
- Chapter 7: Advanced Ordered Associative Container Usage
- Chapter 8: Advanced Unordered Associative Container Usage
- Chapter 9: Advanced Container Adaptor Usage
- Chapter 10: Advanced Container View Usage
- Part 3: Mastering STL Algorithms
- Chapter 11: Fundamental Algorithms and Searching
- Chapter 12: Manipulation and Transformation
- Chapter 13: Numeric and Range -Based Operations
- Chapter 14: Permutations, Partitions, and Heaps
- Chapter 15: STL with Ranges
- Part 4: Creating STL-Compatible Types and Algorithms
- Chapter 16: Creating STL-Types Containers
- Chapter 17: Creating STL -Compatible Algorithms
- Chapter 18: Type Traits and Policies
- Part 5: STL Data Structures and Algorithms: Under the Hood
- Chapter 19: Exception Safety
- Chapter 20: Thread Safety and Concurrency with the STL
- Chapter 21: STL Interaction with Concepts and Coroutines
- Chapter 22: Parallel Algorithms with the STL
- Index
- Other Books You May Enjoy
جهت دانلود کتاب Data Structures and Algorithms with the C++ STL میتوانید پس از پرداخت، دریافت کنید.
دیدگاهها
هیچ دیدگاهی برای این محصول نوشته نشده است.