دوره ساختمان داده و الگوریتم‌ها در جاوااسکریپت

89,000 تومان

تعداد دانشجوها: 194

 

بعد از ثبت نام در دوره، برای دانلود ویدیوها وارد قسمت “حساب کاربری” شوید.

این دوره در حال برگزاری است.

توضیحات

ساختمان داده و الگوریتم‌ها یکی از مهم‌ترین مفاهیم در برنامه نویسی هستند. بیشتر شرکت‌های پیشرو فناوری در مراحل استخدام و مصاحبه، تسلط بر مباحث ساختمان داده و الگوریتم‌ها را یکی از موارد بسیار مهم در نظر می‌گیرند. همین طور زمانی که به عنوان یک توسعه دهنده قصد توسعه یک نرم افزار سطح متوسط یا بزرگ را داشته باشید، قطعا دانش این دو مفهوم بسیار کاربردی خواهد بود.

الگوریتم‌ها مجموعه‌ای از روش‌ها هستند برای حل مسائل. طبیعتا انتخاب بهترین الگوریتم بر اساس منطق توسعه نرم افزار بسیار تاثیر گذار می‌باشد. ساختمان داده نیز در علوم کامپیوتر یک روش می‌باشد برای مدیریت داده‌های نرم افزار.

ساختمان‌های داده می‌توانند به صورت Built in در یک زبان برنامه نویسی باشند. مانند آرایه‌ها، آبجکت‌ها، Map و Set در جاوااسکریپت. اما ساختارهای داده‌ای دیگری نیز وجود دارند که به عنوان مفاهیم برنامه نویسی هستند. این ساختنمان‌های داده را می‌توان با زبان‌های برنامه نویسی مختلف پیاده سازی کرد.

در دوره ساختمان داده و الگوریتم‌های فرانت کست تلاش می‌کنیم تا با یک رویکرد دقیق، تمام مفاهیم را به صورت جامع بررسی کنیم. این دوره از قسمت‌های تئوری و کد تشکیل شده. همین طور بر اساس چالش‌های برنامه نویسی متعدد پیش خواهیم رفت.

در پایان دوره شما قادر خواهید بود تا مسائل متنوع برنامه نویسی را با بهترین روش‌ها پیاده سازی کنید. هدف اصلی در این دوره تمرکز بر روی مهارت حل مسئله است.

مهم‌ترین پیش‌نیاز این دوره، درک مفاهیم برنامه نویسی در جاوااسکریپت است. برای بررسی دقیق و جامع جاوااسکریپت، دوره جامع و پیشرفته جاوااسکریپت فرانت کست را پیشنهاد می‌کنیم.

پشتیبانی این دوره مانند سایر دوره‌های فرانت کست با مدرس دوره می‌باشد. در طول فرآیند یادگیری قدم به قدم باهم پیش خواهیم رفت. با انجام چالش‌ها توانایی شما برای انجام مسائل پیچیده‌تر در برنامه نویسی بیشتر خواهد شد.

دوره ساختمان داده و الگوریتم‌ها در حال برگزار است. هر هفته ویدیوهای جدید به این دوره اضافه می‌شوند.

سرفصل‌ها:

معرفی دوره. بررسی دوره ساختمان داده و الگوریتم‌ها در جاوااسکریپت – مشاهده ویدیو

۱. پیش‌ نیازهای دوره – مشاهده ویدیو

۲. یادگیری دقیق‌تر مفاهیم و پشتیبانی دوره – مشاهده ویدیو

۳. بررسی ساختمان داده – مشاهده ویدیو

۴. آرایه‌ها – بررسی دقیق‌تر – مشاهده ویدیو

۵. استفاده از Set – مشاهده ویدیو

۶. مقایسه آرایه‌ها و Set

۷. آبجکت‌ها – بررسی دقیق‌تر

۸. استفاده از Map

۹. مقایسه آبجکت‌ها و Map

۱۰. بررسی Linked List

۱۱. افزودن مقادیر در Linked List

۱۲. دریافت خروجی از Linked List

۱۳. افزودن مقادیر به ابتدای لیست

۱۴. حذف مقادیر از لیست

۱۵. جست و جو و افزودن مقادیر در میانه لیست

۱۶. دلایل استفاده از Linked List

۱۷. بررسی پیچیدگی زمانی و Big O Notation

۱۸. پیچیدگی زمانی در آرایه‌ها و Linked List

۱۹. ساختمان داده‌های List و Table

۲۰. استفاده از List و Table در جاوااسکریپت

۲۱. بررسی ساختمان داده Stack

۲۲. پیاده سازی Stack

 

ویدیوهای اضافه شده:

۲۳. استفاده از Linked List در Stack

۲۴. پیاده سازی Stack با Linked List

۲۵. بررسی ساختمان داده Queue

۲۶. پیاده سازی Queue

۲۷. استفاده از Linked List در Queue

18 پاسخ به “دوره ساختمان داده و الگوریتم‌ها در جاوااسکریپت”

  1. sepezh گفت:

    سلام، وقتتون بخیر
    ممنونم بابت آموزش خوبتون
    من دوتا سوال دارم و لطف می‌کنید اگر جواب بدید:
    ۱٫ تووی ویدئوی ۱۴ برای متد find، چرا این خط
    curElement = curElement.next
    رو نوشتید؟ ما که قرار نیست المنتی رو جا به جا کنیم و فقط قراره المنت مورد نظرمون در صورت وجود نمایش داده بشه!
    ۲٫ تووی ویدئوی ۱۵، مقدار next برای newElement رو مساوی existingElement.value قرار دادید؟ اینطوری که newElement داره به مقدار قبل از خودش، که ۲ هست اشاره می کنه!

    • سلام
      ممنون از شما.
      در صورتی که المنت مورد نظر رو در زمان پیمایش با While نتونیم پیدا کنیم، باید المنت بعدی بررسی بشه.
      اشاره گر next مقدار المنت بعدی رو در نظر می‌گیره. در نتیجه می‌تونیم برای curElement مقداردهی مجدد کنیم.
      در مورد سوال بعدیتون هم موضوع شبیه به این هست. باید دقت کنید که مقدار next زمانی که به عنوان یک Property در نظر گرفته می‌شه، به معنی مقدار بعدی لیست هست.
      البته باید توجه داشت که زمانی که value برای existingElement بررسی می‌شه، برای این هست که بدونیم المنت اصلی لیست چه مقداری هست.

  2. ashiyanehamid گفت:

    سلام. وقتتون بخیر. میشه در مورد مسائلی که میخواید در آینده بررسی کنید و الگوریتم هاتون یکم توضیح بدین؟ ممنون

    • سلام.

      بله حتما. این دوره از دو قسمت اصلی ساختمان داده و الگوریتم‌ها تشکیل شده.
      در قسمت ساختمان داده مفاهیم Linked List – Stack – Queue – Hash Table – Basic Tree – Binary Search – Heap – Graph بررسی خواهند شد.
      و در قسمت الگوریتم‌ها مفاهیم پیچیدگی زمانی و Big O Notation، الگوریتم‌های جست و جو و Sort، الگوریتم‌های آرایه‌ها و در نهایت بررسی الگوریتم‌های پیچیده‌تر رو خواهیم داشت.
      در طول دوره تمرکز ما روی مهارت حل مسئله هست.

  3. MasoudHosseini گفت:

    سلام و درود استاد
    باز هم یه حرکت خفن از شما
    ممنون که با این قیمت و کد های تخفیف به فکر ما هستین

  4. داود گفت:

    سلام استاد این دوره در کنار node js کاربردی داره؟

    • سلام
      در طول این دوره مهارت حل مسئله در برنامه نویسی رو یاد می‌گیریم.
      برای همین می‌تونم بگم به تکنولوژی خاصی محدود نیستیم، تمرکز ما روی مفاهیم برنامه نویسی هست.
      قطعا برای درک بهتر بک‌اند تسلط بر این مفاهیم کاربردی‌تر هست.

  5. داود گفت:

    سلام استاد امید وارم حالتون خوب باشه 🙂

    استاد من در حال یادگیری ریکت هستم از سایت خودتون و واقعا خیلی عالی تدریس میشه من که خیلی خیلی راضی ام 🙂

    میخواستم ببینم این دوره در کنار ریکت به دردم میخوره؟

    خیلی ممنون از شما استاد عزیز

    • سلام
      خیلی ممنونم از لطفتون و امیدوارم براتون مفید باشه.
      قطعا می‌تونه کاربردی باشه، چون تسلط بیشتر شما روی مفاهیم اصلی برنامه نویسی در جاوااسکریپت می‌تونه برای درک React کمکتون کنه.

  6. مهدی نیسی گفت:

    سلام استاد صدری وقتتون بخیر
    استاد من از امروز برنامه ریزی کردم برای یادگیری این دوره 😍

    فقط یک سوال در هفته چند قسمت قراره منتشر کنید؟

  7. amir_code گفت:

    سلام استاد صدری وقتتون بخیر
    از اسفندماه منتظر این دوره م 😁🤗

  8. نیما فیض شمس گفت:

    سلام و سپاس استاد عزیز ممنون برای این دوره خوب و کاربردی

  9. sajjadr7373 گفت:

    سلام روزتون بخیر. خسته نباشید. به نظر میرسه من اولین کامنت هستم :))
    یه سوالی که شاید اکثر دوستان بپرسن اینه که ، این دوره قراره حدودا چند قسمت باشه؟

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

برای اطلاع از به روز رسانی دوره‌ها عضو کانال تلگرام فرانت کست شوید