0% found this document useful (0 votes)
112 views16 pages

Acing Technical Interviews

This document provides tips for acing a technical interview by summarizing common data structures, algorithms, and interview questions. It recommends practicing competitive coding problems on sites like LeetCode, Glassdoor for interview experiences, and USACO for training. The summary also outlines preparing for different interview types and knowing your technical background.

Uploaded by

khaleelkhanz
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
112 views16 pages

Acing Technical Interviews

This document provides tips for acing a technical interview by summarizing common data structures, algorithms, and interview questions. It recommends practicing competitive coding problems on sites like LeetCode, Glassdoor for interview experiences, and USACO for training. The summary also outlines preparing for different interview types and knowing your technical background.

Uploaded by

khaleelkhanz
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 16

Acing Your Technical Interview

Tony Ho Harvard 2014

What is the difference between a Stack and a Queue? How do you take care of conflicts in Hash Tables?

What happens when you visit a website? Describe everything you know.

Background
! " CS50 TF ! " Google Summer 2010 ! " Facebook Summer 2011 ! " How do I prepare for my interviews?

Reverse, Trim, Remove Letters from, Check Palindrome on, Find Longest Palindrome in a String.

How do they hire?


! " Interviews!
! " Software Engineer ! " Product Manager

! " Require Technical Background

Check if a number is a power of 2. In an array of size n-1 with all but one number from 1-n, find the missing number. Make the pow function.

Why do they interview?


! " Acquire the best talent for their company
! " Software Engineers Code! ! " Product Manager Innovate!

! " The interview process then must be difficult and very

selective

Given a linked list, extend the linked list with the current elements reversed. Reverse the linked list. Randomize the linked list.

The Interview
! " Series of 2 to 5 depending on the company ! " 30-40 minutes each ! " Two types: ! " Onsite : whiteboard coding
! " Over the Phone : Collab-edit coding

! " 2-3 problems testing your computer science knowledge ! " Yes, you may need to code even for product engineers
Write Binary Search, Traverse a Tree recursively. Given traversals (pre, in, post) determine the tree

Types of Questions
1." Problem Solving / Algorithms ! " Find optimal solutions (Big-O) ! " Write the solution 2." Data Structures ! " Goes along with algorithms but they might directly as you questions about this 3." The internet ! " Information flow ! " Web development techniques 4." Designing ! " Database ! " Systems (Classes, modules, etc.)

Write Fibonacci recursively, iteratively. What are the differences?

General Tips
! " Know your recruits, dont be late, dress nicely ! " Dont stop talking!
! " Fast responses

! " Think out loud ! " They want to see your code (even if its pseudocode!) ! " Ask for hints ! " Theyre nice people!
Create a deck of cards. Then implement shuffle.

Data Structures
! " Stacks ! " Queues ! " Linked-Lists ! " Maps / Sets ! " Hashtables ! " Binary Trees / Trees
Implement and give the Big-O for all data stuctures

! " Tries ! " Red-Black Trees ! " AVL Trees ! " Graphs ! " Heaps

Algorithms
! " Search ! " Recursion ! " String Manipulations ! " Greedy ! " Network Flow ! " Dynamic Programming

! " Number Manipulations ! " Ad Hoc Problems ! " Flood Fill ! " Shortest Path
Design an iterator for your data structures. Implement insert and delete as well.

! " CS124

www.usaco.org

Preparation
! " Problem solving. Competitive coding problems. ! " Do problems as if you are in an interview ! " Quiz your friends 1." glassdoor.com, Google 2." poj.org 3." projecteuler.net 4." train.usaco.org
Implement Merge Sort. Implement a Priority Queue.

5." topcoder.com 6." codeforces.com

glassdoor.com
! " People talk about their past interview experiences with

companies
! " Nowhere to turn in code ! " Peoples solutions are mostly wrong or incomplete

How would you create one of the products that you use today? (Gmail, Facebook, Iphones)

poj.org
! " Great resource of problems ! " Competitive programming style ! " You can code up solutions and submit them ! " online judger ! " Great way to practicing coding while looking at

interesting problems that could potentially come up in an interview


Find the largest continuous subset of an array. {6,1,3,2,4} => {1,2,3,4}; {8, 9, 1, 2, 3} => {1,2,3}

Competitive Programming
! " File I/O. Scan file in. Print file out. ! " Sample Problem:

#include<iostream> using namespace std; int main() { int a, b; cin << a << b; cout << a+b << endl; return 0; }

#include<stdio.h> int main() { int a, b; scanf(%d %d, a, b) printf(%d, a+b) return 0; }

Calculate a + b from an input file with a and b that are separated by a whitespace.

Questions?

Case Study

You might also like