آموزش بیش از ۷۰ چالش جاوااسکریپت - ساختمان داده‌ها و الگوریتم‌ها - آخرین آپدیت

دانلود 70+ JavaScript Challenges - Data Structures and Algorithms

نکته: ممکن هست محتوای این صفحه بروز نباشد ولی دانلود دوره آخرین آپدیت می باشد.
نمونه ویدیوها:
توضیحات دوره: به‌روزرسانی شده در می ۲۰۲۵. این دوره اکنون دارای Coursera Coach است! روشی هوشمندانه‌تر برای یادگیری با گفتگوهای تعاملی و در لحظه که به شما کمک می‌کند دانش خود را آزمایش کنید، فرضیات را به چالش بکشید و در حین پیشروی در دوره، درک خود را عمیق‌تر کنید. ساختمان داده‌ها و الگوریتم‌های جاوااسکریپت را از طریق بیش از ۷۰ چالش کدنویسی عملی به طور کامل فرا بگیرید. این دوره با رویکردی کاربردی، به شما کمک می‌کند مهارت‌های حل مسئله خود را تقویت کرده و در عین حال کارایی کدنویسی خود را بهبود ببخشید. شما سناریوهای دنیای واقعی، از دستکاری‌های ساده رشته‌ها تا پیمایش‌های پیشرفته گراف را تجربه خواهید کرد و درک عمیقی از تفکر الگوریتمی به دست خواهید آورد. این مسیر با مفاهیم بنیادی مانند بازگشتی (Recursion) و توابع مرتبه بالا شروع شده و سپس به سراغ ساختمان داده‌های ضروری مانند پشته‌ها، صف‌ها، لیست‌های پیوندی، جدول‌های هش و درخت‌های باینری می‌رود. شما هر مفهوم را از طریق چالش‌های تعاملی که یادگیری را تقویت می‌کنند، پیاده‌سازی خواهید کرد. همچنین پیچیدگی زمانی و مکانی را بررسی خواهید کرد تا مطمئن شوید کدی بهینه می‌نویسید. در مراحل پیشرفته‌تر، با الگوریتم‌های گراف، تکنیک‌های مرتب‌سازی و تمرینات جامع در مورد روش‌های جستجو و پیمایش مواجه خواهید شد. با هر چالش، توانایی خود را در نوشتن کدهای بهینه جاوااسکریپت افزایش داده و مهارت‌های کلیدی مورد نیاز برای مصاحبه‌های استخدامی و ارزیابی‌های فنی را توسعه خواهید داد. این دوره برای توسعه‌دهندگان جاوااسکریپت، علاقه‌مندان به کدنویسی و کسانی که برای مصاحبه‌های فنی آماده می‌شوند، ایده‌آل است. داشتن درک اولیه از سینتکس جاوااسکریپت توصیه می‌شود، اما هیچ تجربه قبلی در ساختمان داده‌ها و الگوریتم‌ها مورد نیاز نیست. چه مبتدی باشید که به دنبال ارتقای سطح خود است و چه توسعه‌دهنده متوسطی که می‌خواهد مهارت‌هایش را صیقل دهد، این دوره تخصص کدنویسی شما را به ارتفاعات جدیدی می‌برد.

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

مقدمه Introduction

  • خوش‌آمدگویی به دوره Welcome to the Course

  • ساختار دوره Course Structure

  • ساختار داده و الگوریتم: چیستی و چرایی DSA - The What & Why

  • ابزارها و تنظیمات اولیه Tools & Basic Setup

  • راه‌اندازی محیط Sandbox Sandbox Environment Setup

چالش‌های پایه بخش اول Basic Challenges Part 1

  • چالش شروع: Hello World Hello World (Starter Challenge)

  • چالش شروع: محاسبه مجموع Get Sum (Starter Challenge)

  • ماشین حساب Calculator

  • شمارش تکرارها Count Occurrences

  • یافتن بزرگترین عدد Find Max Number

  • تبدیل به حالت Title Case Title Case

  • معکوس کردن رشته Reverse String

  • پالیندروم (متقارن) Palindrome

  • شمارش حروف صدا‌دار Count Vowels

  • حذف موارد تکراری Remove Duplicates

چالش‌های پایه بخش دوم Basic Challenges Part 2

  • آرایه FizzBuzz FizzBuzz Array

  • اشتراک دو آرایه Array Intersection

  • نمایش لایک‌ها Display Likes

  • یافتن عدد گم شده Find Missing Number

  • یافتن حرف گم شده Find Missing Letter

  • آیا تمام کاراکترها منحصر به فرد هستند؟ Are All Chars Unique?

  • اولین کاراکتر غیر تکراری First Non-Repeating Character

  • شبیه‌سازی بازی تاس Dice Game Simulation

  • فرمت کردن شماره تلفن Format Phone Number

  • اعتبارسنجی ایمیل Validate Email

متدهای آرایه مرتبه بالا Higher Order Array Methods

  • مثال‌های ساده Simple Examples

  • مجموع مربع‌های اعداد زوج Sum Of Even Squares

  • محاسبه کل فروش Calculate Total Sales

  • کلمه‌ای با بیشترین امتیاز Highest Scoring Word

  • آنagramهای معتبر Valid Anagrams

  • تولیدکننده هشتگ Hashtag Generator

  • اعتبارسنجی IPv4 Valid IPv4

  • تحلیل میزان مصرف سوخت خودرو Analyze Car Mileage

  • اعتبارسنج رمز عبور Password Validator

  • بازنویسی (Refactor) یافتن حرف گم شده Find Missing Letter Refactor

بازگشتی Recursion

  • مقدمه‌ای بر بازگشتی (شمارش معکوس) Recursion Intro (Countdown)

  • بازگشت از توابع بازگشتی (Unwinding) Recursive Unwinding

  • معکوس کردن رشته با استفاده از بازگشتی Reverse String Using Recursion

  • دنباله فیبوناتچی Fibonacci Sequence

  • فاکتوریل Factorial

  • توان Power

  • مجموع آرایه Array Sum

  • محدوده اعداد Number Range

  • تخت کردن آرایه (Flatten) Flatten Array

  • جایگشت‌ها Permutations

پیچیدگی زمانی و مکانی Time and Space Complexity

  • پیچیدگی زمانی چیست؟ What Is Time Complexity?

  • نماد Big O Big O Notation

  • پیچیدگی زمانی ثابت O(1) Constant Time Complexity - O(1)

  • پیچیدگی زمانی خطی O(n) Linear Time Complexity - O(n)

  • پیچیدگی زمانی درجه دو O(n^2) Quadratic Time Complexity - O(n^2)

  • پیچیدگی زمانی لگاریتمی O(log n) Logarithmic Time Complexity - O(log n)

  • پیچیدگی مکانی Space Complexity

  • بیشترین زیرآرایه - مرتبه درجه دو Max Subarray – Quadratic

  • تکنیک پنجره لغزان (Sliding Window) Sliding Window Technique

  • بیشترین زیرآرایه - مرتبه خطی Max Subarray – Linear

جدول‌های هش، Mapها و Setها Hash Tables, Maps, and Sets

  • مقدمه‌ای بر جدول هش Hash Table Intro

  • مپ‌ها (Maps) Maps

  • شمارنده تکرار کلمات Word Frequency Counter

  • دفترچه تلفن Phone Number Directory

  • گروه‌بندی آناگرام‌ها Anagram Grouping

  • ست‌ها (Sets) Sets

  • تفاضل متقارن Symmetric Difference

  • مسئله Two Sum Two Sum

  • طولانی‌ترین توالی متوالی Longest Consecutive

  • پیاده‌سازی جدول هش سفارشی - بخش اول Custom Hash Table - Part 1

  • پیاده‌سازی جدول هش سفارشی - بخش دوم Custom Hash Table - Part 2

  • شمارنده کلمات با جدول هش سفارشی Word Instance Counter Using Custom Hash Table

  • افزودن متد getValues Add getValues Method

  • گروه‌بندی آناگرام‌ها با جدول هش سفارشی Anagram Grouping With Custom Hash Table

پشته‌ها، صف‌ها و لیست‌های پیوندی Stacks, Queues, and Linked Lists

  • پشته (Stack) چیست؟ What Is A Stack?

  • پیاده‌سازی پشته Stack Implementation

  • معکوس کردن رشته با پشته Reverse String Using A Stack

  • بررسی تعادل پرانتزها Balanced Parenthesis

  • صف (Queue) چیست؟ What Is A Queue?

  • پیاده‌سازی صف Queue Implementation

  • معکوس کردن رشته با صف Reverse String With A Queue

  • پالیندروم با صف و پشته Palindrome With A Queue & Stack

  • لیست پیوندی (Linked List) چیست؟ What Is A Linked List?

  • پیاده‌سازی لیست پیوندی Linked List Implementation

  • معکوس کردن رشته با لیست پیوندی Reverse String With A Linked List

  • اشاره‌گرهای سریع و کند Fast & Slow Pointers

  • یافتن نقطه میانی Find Middle

  • لیست پیوندی دوطرفه چیست؟ What Is A Doubly Linked List?

  • پیاده‌سازی لیست پیوندی دوطرفه - بخش اول Doubly Linked List Implementation - Part 1

  • پیاده‌سازی لیست پیوندی دوطرفه - بخش دوم Doubly Linked List Implementation - Part 2

  • یافتن جفت مجموع Find Pair Sum

درخت‌های باینری، BST و گراف‌ها Binary Trees, BST, and Graphs

  • درخت و درخت باینری چیست؟ What Is a Tree / Binary Tree?

  • کلاس گره درخت (Tree Node) Tree Node Class

  • پیمایش اول عمق (DFS) Depth-First Traversal

  • پیمایش اول عمق با استفاده از بازگشتی Depth-First Traversal Using Recursion

  • پیمایش اول عرض (BFS) Breadth-First Traversal

  • حداکثر عمق Maximum Depth

  • درخت جستجوی باینری (BST) چیست؟ What Is A Binary Search Tree?

  • پیاده‌سازی BST - بخش اول Binary Search Tree Implementation - Part 1

  • پیاده‌سازی BST - بخش دوم Binary Search Tree Implementation - Part 2

  • اعتبارسنجی BST Validate BST

  • گراف چیست؟ What Is A Graph?

  • ماتریس مجاورت و لیست مجاورت Adjacency Matrix & Adjacency List

  • پیاده‌سازی گراف Graph Implementation

  • تجسم پیمایش گراف Graph Traversal Visualization

  • پیمایش اول عمق در گراف Graph Depth-First Traversal

  • پیمایش اول عرض در گراف Graph Breadth-First Traversal

الگوریتم‌های مرتب‌سازی Sorting Algorithms

  • الگوریتم‌های مرتب‌سازی چیستند؟ What Are Sorting Algorithms?

  • الگوریتم مرتب‌سازی حبابی (Bubble Sort) Bubble Sort Algorithm

  • پیاده‌سازی مرتب‌سازی حبابی Bubble Sort Implementation

  • الگوریتم مرتب‌سازی درجادویی (Insertion Sort) Insertion Sort Algorithm

  • پیاده‌سازی مرتب‌سازی درجادویی Insertion Sort Implementation

  • الگوریتم مرتب‌سازی انتخابی (Selection Sort) Selection Sort Algorithm

  • پیاده‌سازی مرتب‌سازی انتخابی Selection Sort Implementation

  • الگوریتم مرتب‌سازی ادغامی (Merge Sort) Merge Sort Algorithm

  • پیاده‌سازی مرتب‌سازی ادغامی Merge Sort Implementation

  • الگوریتم مرتب‌سازی سریع (Quick Sort) Quick Sort Algorithm

  • پیاده‌سازی مرتب‌سازی سریع Quick Sort Implementation

جمع‌بندی Wrap Up

  • جمع‌بندی نهایی Wrap Up

نمایش نظرات

آموزش بیش از ۷۰ چالش جاوااسکریپت - ساختمان داده‌ها و الگوریتم‌ها
جزییات دوره
19h 7m
114
(آخرین آپدیت)
210
- از 5
دارد
دارد
دارد
Chris Croft
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Chris Croft Chris Croft

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