آموزش مبانی تفکر الگوریتمی با پایتون

Foundations of Algorithmic Thinking with Python

نکته: آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
نمونه ویدیوها:
توضیحات دوره: کلمه "الگوریتم" که زمانی تنها استان ریاضیات و علوم کامپیوتر بود، وارد زبان عامیانه مدرن شده است، زیرا، خوب یا بد، الگوریتم‌ها هرگز در زندگی روزمره مهم‌تر یا تاثیرگذارتر نبوده‌اند. اگر شما یک توسعه دهنده هستید، باید با طیف وسیعی از تفکر الگوریتمی آشنا باشید تا بتوانید مشکلات جدید را همانطور که خود را نشان می دهند حل کنید. اگر قبلاً با پایتون آشنایی دارید، مهارت بیشتر در تفکر الگوریتمی راهی عالی برای افزایش ارزش خود به عنوان یک توسعه دهنده است. در این دوره، رابین اندروز توضیح می دهد که چگونه پایتون، به دلیل وضوح و بیان آن، ابزار ایده آلی برای کاوش در تفکر الگوریتمی است. او ابزارهایی را به شما نشان می‌دهد تا به شما در درک جریان الگوریتم‌ها کمک کند، رویکرد brute force برای حل الگوریتم‌ها را توضیح می‌دهد، مفاهیم پیچیدگی زمان و مکان را با توجه به تجزیه و تحلیل الگوریتم، استراتژی کاهش و تسخیر، و موارد دیگر را توضیح می‌دهد.

سرفصل ها و درس ها

معرفی Introduction

  • آنچه شما باید بدانید What you should know

  • اهمیت تفکر الگوریتمی Importance of algorithmic thinking

  • با این دوره از GitHub Codespaces استفاده کنید Use GitHub Codespaces with this course

1. گرم کردن 1. Warm Up

  • چالش: 100 در Challenge: 100 doors

  • FizzBuzz FizzBuzz

  • راه حل: 100 در Solution: 100 doors

2. ابزارهایی برای کمک به درک جریان الگوریتم ها 2. Tools to Help Understand the Flow of Algorithms

  • شبه کد Pseudocode

  • استفاده از تخته سفید برای بررسی الگوریتم ها Using a whiteboard to explore algorithms

  • ردیابی الگوریتم ها با استفاده از کد یا دیباگر Tracing algorithms using code or a debugger

  • الگوریتم های ردیابی با استفاده از ابزار تجسم آنلاین Tracing algorithms using an online visualization tool

  • انیمیشن های الگوریتمی Algorithm animations

3. الگوریتم های Brute Force 3. Brute Force Algorithms

  • انتخاب مرتب سازی مقدمه Selection Sort introduction

  • مقدمه ای بر الگوریتم های brute force Introduction to brute force algorithms

  • جستجوی خطی Linear search

  • راه حل: انتخاب مرتب سازی در پایتون Solution: Selection Sort in Python

  • چالش: مرتب سازی انتخابی در پایتون Challenge: Selection Sort in Python

4. تحلیل پیچیدگی زمان-مکان 4. Analysis of Time-Space Complexity

  • مقدمه ای بر تحلیل پیچیدگی زمان-مکان Introduction to analysis of time-space complexity

  • ملاحظات حافظه هنگام پیاده سازی الگوریتم ها Memory considerations when implementing algorithms

  • نمونه هایی از پیچیدگی زمانی با پایتون Examples of time complexity with Python

  • راه حل: تمرین نمادگذاری Big-O Solution: Big-O notation practice

  • چالش: تمرین نمادگذاری Big-O Challenge: Big-O notation practice

5. الگوریتم های حریص 5. Greedy Algorithms

  • مقدمه ای بر الگوریتم های حریصانه Introduction to greedy algorithms

  • راه حل مشکل ایجاد تغییر Solution to the change making problem

  • چالش: الگوریتم Dijkstra Challenge: Dijkstra's algorithm

  • الگوریتم دایکسترا: پیاده سازی پایتون Dijkstra's algorithm: Python implementation

  • راه حل: الگوریتم دایکسترا Solution: Dijkstra's algorithm

  • الگوریتم دایکسترا Dijkstra's algorithm

  • مقدمه ای بر مسئله ایجاد تغییر Introduction to the change making problem

6. کاهش و تسخیر 6. Decrease and Conquer

  • سربازان کشتی Ferrying soldiers

  • چالش: جستجوی باینری Challenge: Binary search

  • راه حل: جستجوی باینری Solution: Binary search

  • جستجوی باینری Binary search

  • مقدمه ای برای کاهش و تسخیر Introduction to decrease and conquer

نتیجه Conclusion

  • بررسی تفکر الگوریتمی با پایتون Exploring algorithmic thinking with Python

نمایش نظرات

آموزش مبانی تفکر الگوریتمی با پایتون
جزییات دوره
1h 16m
34
Linkedin (لینکدین) Linkedin (لینکدین)
(آخرین آپدیت)
39,227
- از 5
ندارد
دارد
دارد
Robin Andrews
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Robin Andrews Robin Andrews

بنیانگذار Compucademy رابین اندروز یک معلم علوم کامپیوتر و بنیانگذار Compucademy است.

رابین 15+ سال تجربه تدریس را برای نقش خود در Compucademy به ارمغان می آورد ، سازمانی که از دانشجویان و معلمان علوم کامپیوتر پشتیبانی می کند ، با منابع مختلفی از جمله به عنوان آموزش های ویدئویی ، آزمونها ، و فعالیت های برنامه نویسی عملی. هدف او این است که دانش کامپیوتر - و به ویژه برنامه نویسی پایتون - را با روشی زنده و با استفاده از پازل ، بازی ها و یک کد برنامه نویسی در دسترس ، زنده کند.