This course proivdes resources need to pull off the trick: data structures or a common pattern in the problem. Not every little details like the laws of physics, not at the level of mathematician.
In a real technical interview, you just need to show that you can successfully perform the trick and that you understand the concepts behind it.
outline
- Introduction and EfficiencyCourse IntroductionSyntaxEfficiencyrun time, storage spacerely on you creativity and abilityNotation of Efficiencybig O notationworst case scenario ; upper bound
- List-Based CollectionsListsappend(), insert(),remove(elem), sort(), reverse() # these command don’t return new listpop(index)ArraysLinked ListsStacksQueues
- Searching and SortingBinary SearchRecursionBubble Sortn^2memory: O(1), in-positionMerge Sortn log(n)Quick Sortworst case: O(n^2)average case: nlog(n)
- Maps and HashingMapsHashingCollisionsHashing Conventions
- TreesTreesTree TraversalBinary TreesBinary Search TreesHeapsSelf-Balancing Trees
- GraphsGraphsGraph PropertiesGraph RepresentationGraph TraversalGraph Paths
- Case Studies in AlgorithmsShortest Path Problemgreedy algorithmKnapsack Problembrute force solution, 2^nTraveling Salesman ProblemNP hard.Not always have efficient solution
- Technical Interview TipsMock Interview Breakdown1 clarifying the questionprove to interviewer that you won’t dive head first into a probelm and potentially waste time writing code that doesn’t solve the initial issue.2 generating inputs and output3 generating test caseshandle weird input4 brainstormingthe interviewer is there to help you and being able to take in their feedback demonstartes your teamwork skills5 runtime analysiscodingdebuggingAdditional TipsPractice with PrampNext Steps
Data Types
boolean = True
number = 1.1
string = "Strings can be declared with single or double quotes."
list = ["Lists can have", 1, 2, 3, 4, "or more types together!"]
tuple = ("Tuples", "can have", "more than", 2, "elements!")
dictionary = {'one': 1, 'two': 2, 'three': 3}
variable_with_zero_data = None
Conditionals
if cake == "delicious":
return "Yes please!"
elif cake == "okay":
return "I'll have a small piece."
else:
return "No, thank you."
Classes
class Person(object): # inherit from object
def __init__(self, name, age):
self.name = name
self.age = age
def birthday(self):
self.age += 1