Foundations of Software Development - Data Structures and Algorithms
USD 120 / NGN 100,000Introduction
Students build a foundation for creating optimized and well-designed systems. Additionally, it addresses technical solutions to common challenges in job interviews.
Course Description
This course explores principles of software development, architectural patterns, testing, algorithms, data structures, and time complexity. Throughout the course, we will closely examine systematic thinking and problem-solving to generate optimized code, especially when dealing with large datasets.
Syllabus
Week 1:
- Lesson 1: Introduction to Data Structures and Algorithms – Fibonacci Sequence – 9:03
- Lesson 2: Python algorithms, arrays, filtering out duplicates – 5:28
- Lesson 3: Implementation of the bubble sort algorithm in Python – 4:36
Assignment 1
Week 2:
- Lesson 1: Selection Sort Implementation in Python – 4:29
- Lesson 2: Insertion Sort Implementation in Python – 7:02
Assignment 2
Week 3:
- Lesson 1: Quick Sort Implementation in Python – 7: 39
- Lesson 2: Counting Sort algorithm and its Python Implementation – 11:14
Assignment 3
Week 4:
- Lesson 1: Radix Sort Implementation in Python - 10:03
- Lesson 2: Merge Sort Implementation in Python - 7:31
Assignment 4
Week 5:
- Lesson 1: Search Algorithms and Python Implementation – 14:08
Quiz 1: 10 % of final grade
Week 6:
- Lesson 1: Linked Lists, and Singly Linked List – 18:51
- Lesson 2: Doubly and Circular Linked List – 13:21
Assignment 5
Week 7:
Stacks and Queues
Assignment 6
Week 8:
Hash Tables
Hash Sets
Hash Maps
Assignment 7
Week 9:
Tree Data Structure
Binary Trees and Preorder Traversals
In-order and post-order traversals
Quiz 2 : 10% of Final Grade
Week 10:
Array Implementation of Binay Trees
Binary Search trees
Assignment 8
Week 11:
Graph Data Structure, Implementation, and Traversal
Assignment 9:
Week 12:
The Shortest Path Problem
Technical Solutions
Assignment 10:
Week 13:
- Lesson 1: The minimum spanning tree problem
Week 13:
- Lesson 1: The maximum flow problem
Final Exam: 20% of final grade
Week 15:
SDLC model and Phases
Design Principles (Modularity, reusability, scalability)
Architectural Patterns (Layered Architecture, Microservices, event-driven architecture)
Software Testing Build tools
Coding Style
Version Control
API Testing
Course Outline
Week 1:
- Lesson 1: Introduction to Data Structures and Algorithms – Fibonacci Sequence – 9:03
- Lesson 2: Python algorithms, arrays, filtering out duplicates – 5:28
- Lesson 3: Implementation of the bubble sort algorithm in Python – 4:36
Assignment 1
Week 2:
- Lesson 1: Selection Sort Implementation in Python – 4:29
- Lesson 2: Insertion Sort Implementation in Python – 7:02
Assignment 2
Week 3:
- Lesson 1: Quick Sort Implementation in Python – 7: 39
- Lesson 2: Counting Sort algorithm and its Python Implementation – 11:14
Assignment 3
Week 4:
- Lesson 1: Radix Sort Implementation in Python - 10:03
- Lesson 2: Merge Sort Implementation in Python - 7:31
Assignment 4
Week 5:
- Lesson 1: Search Algorithms and Python Implementation – 14:08
Quiz 1: 10 % of final grade
Week 6:
- Lesson 1: Linked Lists, and Singly Linked List – 18:51
- Lesson 2: Doubly and Circular Linked List – 13:21
Assignment 5
Week 7:
Stacks and Queues
Assignment 6
Week 8:
Hash Tables
Hash Sets
Hash Maps
Assignment 7
Week 9:
Tree Data Structure
Binary Trees and Preorder Traversals
In-order and post-order traversals
Quiz 2 : 10% of Final Grade
Week 10:
Array Implementation of Binay Trees
Binary Search trees
Assignment 8
Week 11:
Graph Data Structure, Implementation, and Traversal
Assignment 9:
Week 12:
The Shortest Path Problem
Technical Solutions
Assignment 10:
Week 13:
- Lesson 1: The minimum spanning tree problem
Week 13:
- Lesson 1: The maximum flow problem
Final Exam: 20% of final grade
Week 15:
SDLC model and Phases
Design Principles (Modularity, reusability, scalability)
Architectural Patterns (Layered Architecture, Microservices, event-driven architecture)
Software Testing Build tools
Coding Style
Version Control
API Testing
Instructor
Mildred Ojomah-Christopher
Master of Liberal Arts: Software Engineering - Harvard University
Graduate Certificate: Data Science - Harvard University
BSc(Hons) : Mathematical Sciences (Computer Science Major) - Kogi State University
Batches
-
Batch B Closed
Enrollment is closed for this batch.