Skip to content

This course will help you prepare for the unique aspects of a coding job interview, with approaches to problem-solving and computer science foundations.

Notifications You must be signed in to change notification settings

Barbarpotato/Coding-Interview-Preparation

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

alt text This course consists of four modules. They cover the following topics:

Module 1: Introduction to the coding interview

In this introductory module, you'll learn what a coding interview is, what it may consist of, and the types of coding interviews you might encounter. You'll discover how to prepare for a coding interview, focusing on communication and working with pseudocode. You will also get an introduction to computer science, including the fundamental concepts of Binary, Big O notation, and time and space complexity.

By the end of this module, you will:

  • Be prepared for the interview process
  • Have a strategy and a collection of tips to prepare you for successful interviews
  • Recognize the role pseudocode plays in coding interviews and
  • Grasp the fundamentals of computer science

Module 2: Introduction to data structures

The second module of this course covers data structures. You'll learn about the implementation and capabilities of data structures across various programming languages and the similar patterns of the overarching architecture. You will learn about basic data structures, such as strings, integers, arrays and objects, before moving on to collection data structures, including lists, stacks and trees, and advanced data structures, such as hash tables, heaps and graphs.

By the end of this module, you will be able to:

  • Review data structures in the context of coding interviews
  • Recognize data structures that are commonly found in coding interviews

Module 3: Introduction to algorithms

In this module, you'll learn about algorithms. You'll cover common approaches to sorting and searching with algorithms. You'll also explore the time and space complexity aspects of sorting and searching. You will then learn about working with algorithms, demonstrating how to visualize and problem-solve with algorithmic approaches, such as divide and conquer, greedy algorithms and dynamic programming.

By the end of this module, you will be able to:

  • Grasp the concept and usage of algorithms
  • Visualize an algorithm
  • Combine new and previously learned coding patterns to solve problems

Module 4: Final project

In this module, you will be assessed on the key concepts and topics covered in the course by taking the course quiz. You will complete this graded assessment with ten questions to test your knowledge and understanding of all the concepts and skills you have learned throughout the course. You will need to obtain a grade of 80% or higher, which will determine whether you can successfully pass the course.

By the end of this module, you will be able to: = Apply the knowledge you've learned in this course