This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Populating Next Right Pointers in Each Node Oct 28 '12 | |
Given a binary tree | |
struct TreeLinkNode { | |
TreeLinkNode *left; | |
TreeLinkNode *right; | |
TreeLinkNode *next; | |
} | |
Populate each next pointer to point to its next right node. If there is no next right node, the next pointer should be set to NULL. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Pascal's Triangle Oct 28 '12 | |
Given numRows, generate the first numRows of Pascal's triangle. | |
For example, given numRows = 5, | |
Return | |
[ | |
[1], | |
[1,1], | |
[1,2,1], |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Pascal's Triangle II Oct 29 '12 | |
Given an index k, return the kth row of the Pascal's triangle. | |
For example, given k = 3, | |
Return [1,3,3,1]. | |
Note: | |
Could you optimize your algorithm to use only O(k) extra space? |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Given a triangle, find the minimum path sum from top to bottom. Each step you may move to adjacent numbers on the row below. | |
For example, given the following triangle | |
[ | |
[2], | |
[3,4], | |
[6,5,7], | |
[4,1,8,3] | |
] | |
The minimum path sum from top to bottom is 11 (i.e., 2 + 3 + 5 + 1 = 11). |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Say you have an array for which the ith element is the price of a given stock on day i. | |
If you were only permitted to complete at most one transaction (ie, buy one and sell one share of the stock), design an algorithm to find the maximum profit. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Best Time to Buy and Sell Stock II | |
Say you have an array for which the ith element is the price of a given stock on day i. | |
Design an algorithm to find the maximum profit. You may complete as many transactions as you like (ie, buy one and sell one share of the stock multiple times). However, you may not engage in multiple transactions at the same time (ie, you must sell the stock before you buy again). |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Best Time to Buy and Sell Stock III Nov 7 '12 | |
Say you have an array for which the ith element is the price of a given stock on day i. | |
Design an algorithm to find the maximum profit. You may complete at most two transactions. | |
Note: | |
You may not engage in multiple transactions at the same time (ie, you must sell the stock before you buy again). |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Binary Tree Maximum Path Sum Nov 8 '12 | |
Given a binary tree, find the maximum path sum. | |
The path may start and end at any node in the tree. | |
For example: | |
Given the below binary tree, | |
1 | |
/ \ |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Given a string, determine if it is a palindrome, considering only alphanumeric characters and ignoring cases. | |
For example, | |
"A man, a plan, a canal: Panama" is a palindrome. | |
"race a car" is not a palindrome. | |
Note: | |
Have you consider that the string might be empty? This is a good question to ask during an interview. | |
For the purpose of this problem, we define empty string as valid palindrome. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Populating Next Right Pointers in Each Node II Oct 28 '12 | |
Follow up for problem "Populating Next Right Pointers in Each Node". | |
What if the given tree could be any binary tree? Would your previous solution still work? | |
Note: | |
You may only use constant extra space. | |
For example, | |
Given the following binary tree, |
OlderNewer