Code Monkey home page Code Monkey logo

technical-interview-prep's Introduction

interview-prep

This a combination of piece of information I found around the internet. If you believe there is a better answer, submit a pull request. Most of this content was put together quickly before an interview for review.

If you use it, please star it so I know it is getting use.

What you need to know

Complexity
  • Big O
  • Algorithm Complexity
Sorting
  • Quick Sort
  • Merge Sort
  • When do you use merge sort, when do you use quick sort
Hash Tables
  • Hash Tables (How they work, implement one using only arrays)
Trees
  • Tree Construction Tranversal and manipulation
  • Binary Trees
  • Nary Trees
  • Trie Trees
  • Balance Binary Tree
  • Red Black Tree
  • Splay Tree
  • AVL Tree
Graph in memory
  • Objects and pointers (Graph in memory) pros and cons
  • Matrix (Graph in memory) Pros and cons
  • Adjacency list (Graph in memory) pros and cons
Tree traversal
  • Tree Traversal so Breadth first search
  • Depth first serch
  • Difference between inorder, postorder, preorder
  • Computational complexity of each tree traversal, their tradeoffs
  • Dijkstra
  • A*
NP-Complete Problems
  • NP-Complete problems like traveling salesman, knapsack problem
OS
  • Know about processes, threads, concurrency issues
  • Know about locks, mutexes, semaphores and monitors
  • Know about deadlock and live lock, how to avoid them
  • Know what resources a proccesses needs, a thraed needs, how context switch works, how its initiated by os and hardware
  • Know about scheduling
  • Know fundamentals of "modern" concurrency constructs
Recursion
  • Recursive problems - know how to use and repurpose common recursive algorithms to solve new problems
  • Induction for recursive algorithms
Descrete Math
  • Basic descrete math questions
  • N-choose-k problem

technical-interview-prep's People

Contributors

keithweaver avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.