About this Course

Are you ready to conquer your next interview? To succeed, you need to understand the expectations. Virtually all technical interviews follow a very set pattern: you get asked a very specific type of question, you're required to have very specific knowledge, and you're expected to answer—and interact with your interviewer—in a very particular way. Knowing this in advance, and preparing accordingly, is the key to success.

This course was designed to give you what you need to ace a technical interview. Included are:

  • videos that walk you through the algorithms and data structures concepts commonly asked in technical interviews
  • an explanation of efficiency, and an explanation of how it relates to topics covered throughout the class
  • practice problems and quizzes to test your understanding
  • a mock interview with a breakdown explaining how interviewers expect you to explain your thought process
  • curated links to outside resources, including a special link to live practice interviewing with other Udacity students on Pramp
  • if you’re a Nanodegree student, a final project where you can answer interview questions and get feedback from a trained reviewer.

The goal of this course is to prepare you for a real technical interview, so we focus on the material you'll actually be expected to do.

Course Cost
Free
Timeline
Approx. 4 weeks
Skill Level
Intermediate
Included in Course
  • Icon course 01 3edf6b45629a2e8f1b490e1fb1516899e98b3b30db721466e83b1a1c16e237b1 Rich Learning Content

  • Icon course 04 2edd94a12ef9e5f0ebe04f6c9f6ae2c89e5efba5fd0b703c60f65837f8b54430 Interactive Quizzes

  • Icon course 02 2d90171a3a467a7d4613c7c615f15093d7402c66f2cf9a5ab4bcf11a4958aa33 Taught by Industry Pros

  • Icon course 05 237542f88ede3178ac4845d4bebf431ddd36d9c3c35aedfbd92e148c1c7361c6 Self-Paced Learning

  • Icon course 03 142f0532acf4fa030d680f5cb3babed8007e9ac853d0a3bf731fa30a7869db3a Student Support Community

Join the Path to Greatness

This free course is your first step towards a new career with the Machine Learning Engineer Nanodegree Program.

Free Course

Technical Interview

by Pramp

Enhance your skill set and boost your hirability through innovative, independent learning.

Icon steps 54aa753742d05d598baf005f2bb1b5bb6339a7d544b84089a1eee6acd5a8543d

Course Leads

  • Brynn Claypoole
    Brynn Claypoole

    Instructor

  • Horatio Thomas
    Horatio Thomas

    Instructor

What You Will Learn

Lesson 1

Introduction and Efficiency

  • Introduction to the course, including an explanation of expected Python knowledge.
  • Dive in with the definition of efficiency in a computer science context and the notation commonly used to describe efficiency.
  • Practice describing efficiency from code snippets.
Lesson 1

Introduction and Efficiency

  • Introduction to the course, including an explanation of expected Python knowledge.
  • Dive in with the definition of efficiency in a computer science context and the notation commonly used to describe efficiency.
  • Practice describing efficiency from code snippets.
Lesson 2

List-Based Collections

  • Learn the formal definition of a list in computer science, and see definitions and examples of list-based data structures, arrays, linked lists, stacks, and queues.
  • Examine the efficiency of common list methods, and practice using and manipulating these data structures.
Lesson 2

List-Based Collections

  • Learn the formal definition of a list in computer science, and see definitions and examples of list-based data structures, arrays, linked lists, stacks, and queues.
  • Examine the efficiency of common list methods, and practice using and manipulating these data structures.
Lesson 3

Searching and Sorting

  • Explore how to search and sort with list-based data structures, including binary search and bubble, merge, and quick sort.
  • Examine the efficiency of each and learn how to use recursion in searching and sorting.
  • See and write examples of these methods, as well as more sorting algorithms like insertion sort.
Lesson 3

Searching and Sorting

  • Explore how to search and sort with list-based data structures, including binary search and bubble, merge, and quick sort.
  • Examine the efficiency of each and learn how to use recursion in searching and sorting.
  • See and write examples of these methods, as well as more sorting algorithms like insertion sort.
Lesson 4

Maps and Hashing

  • Understand the concepts of sets, maps (dictionaries), and hashing.
  • Examine common problems and approaches to hashing, and practice with examples of hash tables and hash maps.
Lesson 4

Maps and Hashing

  • Understand the concepts of sets, maps (dictionaries), and hashing.
  • Examine common problems and approaches to hashing, and practice with examples of hash tables and hash maps.
Lesson 5

Trees

  • Learn the concepts and terminology associated with tree data structures.
  • Investigate common tree types, such as binary search trees, heaps, and self-balancing trees.
  • See examples of tree traversal techniques, examine their efficiency, and practice manipulating trees.
Lesson 5

Trees

  • Learn the concepts and terminology associated with tree data structures.
  • Investigate common tree types, such as binary search trees, heaps, and self-balancing trees.
  • See examples of tree traversal techniques, examine their efficiency, and practice manipulating trees.
Lesson 6

Graphs

  • Examine the concept of a graph and common terms, coded representations, properties, traversals, and paths.
  • Practice manipulating graphs and determining the efficiency associated with graphs.
Lesson 6

Graphs

  • Examine the concept of a graph and common terms, coded representations, properties, traversals, and paths.
  • Practice manipulating graphs and determining the efficiency associated with graphs.
Lesson 7

Case Studies in Algorithms

  • Explore famous computer science problems.
  • Shortest Path Problem, the Knapsack Problem, and the Traveling Salesman Problem.
  • Learn about brute-force, greedy, and dynamic programming solutions to such problems.
Lesson 7

Case Studies in Algorithms

  • Explore famous computer science problems.
  • Shortest Path Problem, the Knapsack Problem, and the Traveling Salesman Problem.
  • Learn about brute-force, greedy, and dynamic programming solutions to such problems.
Lesson 8

Technical Interviewing Techniques

  • Learn about the “algorithm” for answering common technical interviewing questions.
  • See how to clarify and explain practice interview questions using the concepts taught in this course.
  • Get tips for giving interviewers exactly what they’re looking for in an interview.
Lesson 8

Technical Interviewing Techniques

  • Learn about the “algorithm” for answering common technical interviewing questions.
  • See how to clarify and explain practice interview questions using the concepts taught in this course.
  • Get tips for giving interviewers exactly what they’re looking for in an interview.

Prerequisites and Requirements

  • Basic knowledge of Python
  • Familiarity with basic algebra

See the Technology Requirements for using Udacity.

Why Take This Course

This course provides an introduction to topics that often show up on technical interviews. It is aimed at students who have never taken a course in algorithms and data structures, but want to learn the material. It can also be used to refresh on these topics for those who have seen them before. In addition to video explanations, there are plenty of examples and discussions of the intricacies of different approaches.

This course is distinct from other similar offerings on Udacity. It is a precursor to the “Intro to Algorithms” course, and complimentary to the Interviewing Course listed in most career-focused Nanodegrees. This course is focused on explaining the technical content that show up in interviews, while the other course is more centered on behavioral questions and how to act in an interview.

What do I get?
  • Instructor videos
  • Learn by doing exercises
  • Taught by industry professionals
Icon globe e82eae5d45465aba4fbe4bb746905ce55dc3324f310b79c60e4a20089057d347

Udacity 现已提供中文版本! A Udacity tem uma página em português para você! There's a local version of Udacity for you!

前往优达学城中文网站 Ir para a página brasileira Go to Indian Site or continue to Global Site