پایههایی را که قدرت پایتون در دنیای واقعی را میسازند، استاد شوید.
روتینهای مرتبسازی را بنویسید و ساختارهای داده مهم را از صفر بسازید، سپس روش پایتونیک (Pythonic) برای استفاده عملی از آنها را کشف کنید. برای تایید کد خود، تستهای واحد (Unit Tests) بنویسید و بر متدهای خاص "dunder" در پایتون مسلط شوید.
چرا این دوره؟
اگر قبلاً زبان پایتون را آموختهاید (به عنوان مثال از طریق دوره Masterclass تیم بوچالکا با امتیاز 4.6/5 از بیش از 100,000 نظر)، این دوره ساختارهای داده و الگوریتمهای پایتون، گام منطقی بعدی شماست. این دوره شما را از مرحله «میتوانم پایتون بنویسم»به مرحله «میتوانم پایتون بهینه طراحی کنم»میرساند، با استفاده از ساختارها و الگوریتمهایی که کارفرمایان انتظار دارند.
شما با تیم بوچالکا (Tim Buchalka)و جیپی رابرتز (JP Roberts)، هر دو مدرس بسیار با تجربه، یاد خواهید گرفت. تیم یک مدرس شریک در یودمی با بیش از 1.7 میلیون دانشجوو بیش از 460,000 نظردر دورههایش است. جیپی بینشهای صنعتی خود را به عنوان مدرس همکار به ارمغان میآورد تا تجربهای عملی، قدرتمند و جذاب را تضمین کند.
چه چیزی این دوره را متفاوت میکند؟
ابتدا ساخت، سپس پایتونیک شدن.هر موضوع از یک الگوی واضح پیروی میکند: تئوری، کدنویسی توسط شما، و سپس ابزارهای داخلی پایتون مانند sorted()، heapq، deque و queue.
پوشش عملی و مرتبط با بازار کار.آرایهها، لیستهای پیوندی، پشتهها، صفها، جداول هش، مجموعهها، درختها، هیپها، جستجو و مرتبسازی، همگی با تحلیل Big-O و تستهای واحد آموزش داده میشوند.
پایتون بهروز.این دوره بهبودهای مدرن در CPython، از جمله Powersort در Python 3.11 برای list.sort() را با مقایسه با روشهای قدیمی پوشش میدهد.
نظرات زبانآموزان درباره تدریس تیم و جیپی:
نکته: این نقل قولها بازتاب تجربه دانشجویان از دوره Masterclass پایتون است.
“سرعتش نه کند است و نه تند، دقیقاً مناسب کسانی است که برنامهنویسی بلدند... تا اینجا مدرس فوقالعادهای بود.”–لیندا
“توضیحات عالی و جامع. بسیار کامل. متشکرم!”–آنتونی
“به طرز استثنایی خوب... واقعاً عالی انجام شده!!!”–راکشان
آیا این دوره برای شماست؟
بله:اگر پایتون مقدماتی بلد هستید و میخواهید مانند یک مهندس نرمافزار فکر کنید—ساختار درست را انتخاب کنید، درباره عملکرد استدلال کنید و کدی تمیز و صحیح بنویسید.
بله:اگر برای مصاحبههای کدنویسی آماده میشوید یا به دنبال الگوهای کارآمد و عملی برای پروژههای واقعی هستید.
خیر:اگر کاملاً در پایتون تازهکار هستید. ابتدا با دوره Masterclass شروع کنید و سپس به اینجا بازگردید.
آنچه خواهید آموخت
مبانی و Big-O:ساختارهای داده و الگوریتمها چیستند، پیچیدگی زمانی و مکانی و سبک-سنگین کردنها (trade-offs).
آرایهها و لیستها:مدل حافظه، تغییر اندازه، برش (slicing)، تکرار و متدهای dunder برای توالیهای پایتونیک.
لیستهای پیوندی:لیستهای پیوندی یکطرفه/دوطرفه، درج/حذف، معکوس کردن، پیمایش، ایندکسگذاری و برش.
پشتهها، صفها، دکها (deques):پیادهسازیهای دستی، به علاوه deque و queue در پایتون.
جداول هش و مجموعهها:آدرسدهی باز (Open addressing)، زنجیرهای کردن (chaining)، dict و set و مجموعههای تخصصی.
درختها:درختهای جستجوی دودویی (درج/جستجو/حذف)، استراتژیهای پیمایش و پیادهسازی کامل درخت قرمز-سیاه.
هیپها و صفهای اولویتدار:ساخت هیپها، مرتبسازی هیپ (Heapsort) و heapq در پایتون.
جستجو:جستجوی خطی در مقابل جستجوی دودویی (تکرار شونده و بازگشتی).
مرتبسازی:حباب (Bubble)، انتخابی (Selection)، درج (Insertion)، ادغامی (Merge)، سریع (Quick)، شمارشی (Counting)، رادیکس (Radix) و Powersort در پایتون.
تست و صحت:نوشتن تستهای واحد جامع با unittest، با الهام از سبک تست CPython.
کلاسهای پایه انتزاعی و پروتکلها:استفاده از هر دو و درک تفاوتهای بین آنها.
بازگشت (Recursion):چه زمانی از آن استفاده کنیم و مهمتر از آن، چه زمانی مناسب نیست.
تجربه یادگیری شما
ویدیوهای کدنویسی همزمانکه شما را از مفاهیم پایه به ساختارهای پیشرفته میبرد.
چالشها و راهکارهاتا بتوانید درک خود را تثبیت کنید.
الگوهای عملیاتیکه مستقیماً با کتابخانه استاندارد پایتون مطابقت دارند و برای محیطهای کاری آمادهاند.
سوالات متداول (FAQ)
آیا هم الگوریتمها را پیادهسازی میکنم و هم از توابع داخلی پایتون استفاده میکنم؟
بله. ابتدا با ساختن مدلهای خودتان شروع میکنید و سپس بر ابزارهای قدرتمند کتابخانه استاندارد برای محیط عملی مسلط میشوید.
آیا دوره مرتبسازی مدرن CPython را پوشش میدهد؟
بله، کاملاً بهروز است.این دوره بهبودهای مدرن در CPython، از جمله عبارتهای انتصابی (Walrus operator) و Powersort را پوشش میدهد.
آیا سیاست بازگشت وجه وجود دارد؟
بله. یودمی برای دورههای واجد شرایط، بازه ۳۰ روزه بازگشت وجه ارائه میدهد.
همین حالا ثبتنام کنید
به گام بعدی در مسیر پایتون خود بپیوندید و ساختارها و الگوریتمهایی را که کدهای عالی پایتون را ممکن میسازند، از اصول اولیه تا الگوهای سطح تولید، با راهنمایی تیم بوچالکا و جیپی رابرتز بیاموزید.
Tim Buchalka
Java Python Android و C# Expert Developer - 1.28 میلیون دانشجو
Tim Buchalka's Learn Programming Academy
برنامه نویسان و معلمان حرفه ای - 1.75 میلیون دانش آموز
Jean-Paul Roberts
برنامه نویس کامپیوتر، تحلیلگر و معلم
نمایش نظرات