کتاب Grokking Algorithms, 2nd Edition (درک الگوریتمها، ویرایش دوم) الگوریتمهای مهمی را به شما آموزش میدهد تا سرعت برنامههای خود را افزایش دهید، کد خود را ساده کنید و مشکلات رایج برنامهنویسی را حل کنید.
با کارهایی مانند مرتبسازی و جستجو شروع کنید، سپس مهارتهای خود را برای مقابله با مشکلات پیشرفته مانند فشردهسازی دادهها و هوش مصنوعی ایجاد کنید.
شما حتی یاد خواهید گرفت که بین الگوریتمها مقایسه عملکرد را انجام دهید. به علاوه، این نسخه جدید شامل پوشش تازه درختان، مشکلات NP-complete و بهروزرسانیهای کد پایتون ۳ است.
در ادامه مقدمهای از را از زبان نویسنده شرح خواهیم داد.
مقدمهای بر کتاب Grokking Algorithms:
## چگونه به دنیای الگوریتمها وارد شدم و کتاب Grokking Algorithms را نوشتم؟
برنامهنویسی را به عنوان یک سرگرمی شروع کردم. کتاب Visual Basic ۶ for Dummies اصول اولیه را به من آموخت، و من برای یادگیری بیشتر به خواندن کتابهای دیگر ادامه دادم.
اما موضوع الگوریتمها برایم غیرقابل نفوذ بود. به یاد دارم فهرست مطالب اولین کتاب الگوریتمهایم را با لذت ورق میزدم و فکر میکردم \”بالاخره قراره این موضوعات رو بفهمم! \” اما مطالب بسیار سنگین بود و بعد از چند هفته تسلیم شدم. تا زمانی که اولین استاد خوب الگوریتمها را نداشتم، متوجه نشدم که اینایدهها چقدر ساده و ظریف هستند.
اولین پست وبلاگ تصویری خودم را در سال ۲۰۱۲ نوشتم. من یک یادگیرنده بصری هستم و سبک تصویری را خیلی دوست داشتم. از آن زمان، چند پست تصویری در مورد برنامهنویسی تابعی (functional programming)، Git، یادگیری ماشین (machine learning) و همزمانی (concurrency) نوشتهام.
راستی، وقتی شروع کردم نویسنده متوسطی بودم. توضیح مفاهیم فنی سخت است. پیدا کردن مثالهای خوب زمان بر است و توضیح یک مفهوم دشوار نیز زمان میبرد. بنابراین، سادهترین کار این است که روی نکات سخت سرپوش بگذاریم. فکر میکردم کارم را به خوبی انجام میدهم تا اینکه بعد از اینکه یکی از پستهایم محبوب شد، همکارم به سراغم آمد و گفت: \”پستت را خواندم، اما هنوز این موضوع را نفهمیدم. \” هنوز چیزهای زیادی در مورد نوشتن یاد نگرفته بودم.
در میانه نوشتن این پستهای وبلاگ، انتشارات Manning با من تماس گرفت و پرسید که آیا میخواهم یک کتاب مصور بنویسم. خب، معلوم شد که ویراستاران Manning چیزهای زیادی در مورد توضیح مفاهیم فنی میدانند و آنها به من یاد دادند که چگونه تدریس کنم. من این کتاب را برای رفع یک مشکل خاص نوشتم:
میخواستم کتابی بنویسم که موضوعات فنی سخت را به خوبی توضیح دهد، و یک کتاب الگوریتم قابل فهم را میخواستم.
چاپ اول این کتاب در سال ۲۰۱۶ منتشر شد. از آن زمان، بیش از ۱۰۰۰۰۰ نفر این کتاب را خواندهاند. من از دیدن این تعداد افرادی که با سبک یادگیری بصری ارتباط برقرار کردهاند خوشحالم. با این ویرایش دوم، هدف من همچنان همان است.
در کتاب Grokking Algorithms، از تصاویر و مثالهای به یاد ماندنی برای تثبیت مفاهیم استفاده میکنم. این کتاب برای خوانندگانی طراحی شده است که برنامهنویسی بلد هستند و میخواهند بدون نیاز به دانش ریاضی در مورد الگوریتمها بیشتر بیاموزند.
ویرایش دوم کتاب Grokking Algorithms، برخی از کمبودهای ویرایش اول را جبران میکند. از بسیاری از خوانندگان شنیدم که میخواستند درختها را برایشان توضیح دهم. اکنون در این کتاب دو فصل در مورد درختها وجود دارد. همچنین بخش مربوط به NP-completeness را گسترش دادهام. NP-completeness یک مفهوم بسیار انتزاعی است، و من توضیحی میخواستم که آن را ملموستر کند. اگر شما هم همین حس را دارید، امیدوارم بخش مربوط به NP-completeness این خلأ را برای شما پر کند.
نوشتههای من از زمان آن اولین پست وبلاگ راه زیادی را طی کردهاند، وامیدوارم این کتاب را خواندنی آسان و آموزنده بیابید.
سرفصلهای کتاب Grokking Algorithms:
- grokking algorithms
- brief contents
- contents
- foreword
- preface
- acknowledgments
- about this book
- about the author
- 1 introduction to algorithms
- 2 selection sort
- 3 recursion
- 4 quicksort
- 5 hash tables
- 6 breadth-first search
- 7 trees
- 8 balanced trees
- 9 Dijkstra’s algorithm
- 10 greedy algorithms
- 11 dynamic programming
- 12 k-nearest neighbors
- 13 where to go next
- A-performance of AVL trees
- B-NP-hard problems
- C-answers to exercises
- index
جهت دانلود کتاب Grokking Algorithms میتوانید پس از پرداخت، دریافت کنید.
دیدگاهها
هیچ دیدگاهی برای این محصول نوشته نشده است.