Home
Mentoring
Calendar
Courses
Training
Certifications
Instructors
Articles
About Us
Contact Us
Sign In

AWS





Foundations of Algorithms Class Syllabus

Description:


This course is an introduction to basic algorithms and data structures. It is designed for those without a formal computer science background, but have development experience and are interested in core software development techniques.

This course will have many hands-on exercises and is not tailored to any specific computer language.

Topics include:

  • Bits and Bytes

  • Basic Types

  • Recursion

  • Big O Notation

  • Stacks

  • Queues

  • Searching and Sorting

  • Linked Lists

  • Binary Trees

  • Hash Tables

  • Parsing

Prerequisites:

Class Text Book:

Class Topics:

Class Project
Bits and Bytes - Lecture
Bits and Bytes - Lab
Bits and Bytes - Solutions
Assignment #1: Url Shorteners
Url Shorteners - Solution
Big O Notation - Lecture
Big O Notation - Lab
Big O Notation - Solutions
Strings - Lecture
Strings - Lab
Strings - Solutions
Homework #2 : Converting Number
Converting Number - Solution
Pre-Assignment - Recursion
Recursion - Lecture
Recursion - Lab
Recursion - Solutions
Pre-Assignment - Stacks
Stacks - Lecture
Stacks - Lab
Stacks - Solutions
Homework #3 : RPN Calculator
RPN Calculator - Solution
Project: Balanced Parenthesis
Project: Balanced Parenthesis Solution
Project: HTML Verifier
Project: HTML Verifier Solution
Pre-Assignment - Queues
Queues - Lecture
Queues - Lab
Queues - Solutions
Project: Maze Runner
Maze Runner - Solution
Pre-Assignment Searching
Array Searching - Lecture
Array Searching - Lab
Array Searching - Solutions
Homework #4 : Searching
Searching - Solution
Dynamic Arrays - Lecture
Dynamic Arrays - Lab
Dynamic Arrays - Solutions
Pre-Assignment - Linked Lists
Linked Lists - Lecture
Linked Lists - Lab
Linked Lists - Solutions
Homework #5 : Reverse a Linked List
Reverse a Linked List - Solution
Pre-Assignment - Sorting
Array Sorting - Lecture
Array Sorting - Lab
Array Sorting - Solutions
Bubble Sorting - Lecture
Bubble Sorting - Lab
Bubble Sorting - Solution
Insertion Sorting - Lecture
Insertion Sorting - Lab
Insertion Sorting - Solutions
Homework #6 : String comparison
String comparison - Solution
Quicksort - Lecture
Quicksort - Lab
Quicksort - Solutions
Project: Fastest Sort
Project: Fastest Sort Solution
Project: Merge Two Lists
Project: Merge Two Lists Solution
Pre-Assignment - Binary Trees
Binary Trees - Lecture
Binary Trees - Lab
Binary Trees - Solutions
Project: Binary Trees Cousins
Project: Binary Trees Cousins Solution
Pre-Assignment - Hash Tables
Hash Tables - Lecture
Hash Tables - Lab
Hash Tables - Solutions
Sets - Lecture
Sets - Lab
Sets - Solutions
Project: Sets
Project: Sets Solution
Parsing - Lecture
Parsing - Lab
Parsing - Solutions
Memory Layouts - Lecture
Memory Layouts - Lab
Memory Layouts - Solutions
Basic Types - Lecture
Basic Types - Lab
Basic Types - Solutions
String Handling - Lecture
String Handling - Lab
String Handling - Solutions
Graphs - Lecture
Heaps - Lecture
Doubly-Linked Lists - Lecture
Double-Linked Lists - Lab
Doubly-Linked Lists - Solution
Value-based vs Reference-based - Lecture
Value-based vs Reference-based - Lab
Value-based vs Reference-based - Solutions
Copyright 1999-2020 by Cstructor LLC. All rights Reserved.