Algorithms playground for common questions solved in ruby syntax.
In case you want to prepare yourself for a job interview - try to solve it yourself first, then have a look here.
I interviewed with Google, Facebook, LinkedIn, Twitter and others. I also interviewed others myself. Sometimes it looks like they all ask you the same "out of the box" questions that don't really check knowledge but memorization of the same tricks. This is my way of saying - change your interview style. There are lots of smart people out there, this is not the best way to find them.
|Unique binary search trees||click|
|Binary Tree Side View||click|
|Top K Frequent Elements||click|
|Sum 4 arrays||click|
|Reverse Linked List||click|
|Reverse String In-place||click|
|Nested List Weight Sum II||click|
|Dijkstra's shortest path between two nodes||click|
|Kruskal's minimum spanning tree algorithm||click|
|Find the square root of a number||click|
|Add two binary numbers||click|
|Longest increasing subsequence||click|
|Find all permutations of array||click|
|Finding all combinations of well-formed brackets||click|
|Finding the powerset of a set||click|
|Game of life||click|
|Print all combinations of set joining||click|
|count and say||click|
|Telephone number to words||click|
|Maximum contiguous subarray||click|
|Find the smallest biggest number that has the same digits||click|
|Find the minimum insertions needed to make a word palindrome||click|
|String matching - Knuth Morris Pratt algorithm KMP||click|
|Max Stocks Profit||click|
|Knapsack problem||click, click|
|Longest common subsequence problem||click , click|
|Monty Hall Problem||click|
|Eucliden and Extended Eucliden algorithm||click|
|Suggest index of a number in an array||click|
|Range minimum query sparse table algorithm||click|
|Towers of Hanoi using Stack||click|
|Tarjan's strongly connected components finder||click|
ruby some_file.rb to execute the algorithm. At the bottom of each file there are some test samples.
ruby brackets_combinations.rb will print:
["((()))", "(()())", "(())()", "()(())", "()()()"].
Did you find a bug? any way to do it better? please feel free to pull-request it :)