In this course you will learn about algorithms and data structures, two of the fundamental topics in computer science. There are three main parts to this course: algorithms, data structures, and a deep dive into sorting and searching algorithms.

By the end, you will understand what algorithms and data structures are, how they are measured and evaluated, and how they are used to solve problems.

This course was developed by Pasan Premaratne and Jay McGavren. It was made possible by a grant from

⭐️ Course Contents ⭐️
⌨️ (0:00:00) Introduction to Algorithms
⌨️ (1:57:44) Introduction to Data Structures
⌨️ (4:11:02) Algorithms: Sorting and Searching

⭐️ Code Snippets for Course ⭐️
💻 Introduction to Algorithms:
⌨️ Algorithms in Code:
🔗 Linear Search Implementations:
🔗 Binary Search Implementations:

💻 Introduction to Data Structures
⌨️ Exploring Arrays:
🔗 Array Characteristics and Storage:
🔗 Operations on Arrays:

⌨️ Building a Linked List:
🔗 Singly and Doubly Linked Lists:
🔗 Linked List Operations:

⌨️ The Merge Sort Algorithm:
🔗 Merge Sort Implementations:
🔗 Alternate Versions of Merge Sort:

⌨️ Merge Sort and Linked Lists:
🔗 Implementing Merge Sort on Linked Lists:

💻 Algorithms: Sorting and Searching
⌨️ Sorting Algorithms:
🔗 Code for Bogosort:
🔗 Code for Selection Sort:
🔗 Code for Quicksort:
🔗 Code for Merge Sort:

⌨️ Searching Names:
🔗 Code for Linear Search:
🔗 Code for Binary Search:

Learn to code for free and get a developer job:

Read hundreds of articles on programming: