文章平均质量分 72
ActiveCoder
An active programmer
展开
-
Add One
#include #include using namespace std;/* Given an integer, add its binary number by 1 without using '+'.*/int addOne(int number) { long long int a = number; if(a >= INT_MAX) return -1; /原创 2016-05-11 11:37:43 · 1920 阅读 · 0 评论 -
Number of Islands, variation
/* Given a matrix, find the value area which correponde to the given value. For example; 0 0 0 0 1 1 1 1 1 0 0 0 1 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 if the given position is (0, 4)原创 2016-06-05 03:31:25 · 274 阅读 · 0 评论 -
Random Number Series Questions
This webpage gives a perfect solution to generate K random numbers from given N size array: http://www.geeksforgeeks.org/reservoir-sampling/However, there are a varieties of related questions.1: i原创 2016-07-06 07:59:24 · 248 阅读 · 0 评论 -
Facebook Phone Interview: Phone Number to Letter Combinations
Input: string of digits of arbitrary lengthoutput: print all possible letter combinations for those digits to screen.// This is a typical DFS algorithm.// Suppose we dont know the phone screen l原创 2016-03-23 07:41:29 · 412 阅读 · 0 评论 -
LeetCode 253. Meeting Rooms II
#include #include #include using namespace std;/* Given an array of meeting time interval consiting of start and end times [[s1, e1], [s2, e2], [s3, e3]] (si < ei), find the mininum number of原创 2016-05-24 04:35:16 · 246 阅读 · 0 评论 -
LeetCode 173. Binary Search Tree Iterator
Implement an iterator over a binary search tree (BST). Your iterator will be initialized with the root node of a BST.Calling next() will return the next smallest number in the BST.Note: next() and原创 2016-04-25 00:49:17 · 266 阅读 · 0 评论 -
LeetCode 273. Integer to English Words
I changed the integer into string. If the length is not multiple of 3, append "0" ahead. Then, deal three digits by chunks.#include #include #include using namespace std;/* Convert a non-ne原创 2016-05-10 08:29:20 · 573 阅读 · 0 评论 -
Primes Product
Maybe think about how to solve it iteratively??#include "header.h"using namespace std;void primeProduct(vector& nums, vector& res, int product, int pos) { if(pos > nums.size()) { return;原创 2016-07-07 02:15:08 · 304 阅读 · 0 评论 -
LeetCode 145. Binary Tree Postorder Traversal
Given a binary tree, return the postorder traversal of its nodes' values.For example:Given binary tree {1,#,2,3}, 1 \ 2 / 3return [3,2,1].Stack Problem, One example原创 2016-04-13 05:49:16 · 263 阅读 · 0 评论 -
LeetCode 76. Minimum Window Substring
#include #include #include #include using namespace std;/* Given a string S and a string T, find the minimum window in S which will contain all the characters in T in complexity O(n). For原创 2016-05-07 23:27:53 · 330 阅读 · 0 评论 -
LeetCode 54. Spiral Matrix
Given a matrix of m x n elements (m rows, n columns), return all elements of the matrix in spiral order.For example,Given the following matrix:[ [ 1, 2, 3 ], [ 4, 5, 6 ], [ 7, 8, 9 ]]You原创 2016-04-25 08:52:15 · 274 阅读 · 0 评论 -
LeetCode 206. Reverse Linked List
Reverse a singly linked list.This one is supposed to be easy. However, a lot of companies tend to ask for several versions to solve it. Facebook tends to ask for iteration and recursive.//原创 2016-04-12 23:24:00 · 241 阅读 · 0 评论 -
LeetCode 28. Implement strStr()
Implement strStr().Returns the index of the first occurrence of needle in haystack, or -1 if needle is not part of haystack.It is pretty hard to generalize KMP algorithm under stress and limited原创 2016-04-24 23:48:47 · 364 阅读 · 0 评论 -
LeetCode 111. Minimum Depth of Binary Tree
Given a binary tree, find its minimum depth.The minimum depth is the number of nodes along the shortest path from the root node down to the nearest leaf node.Suppose we have a tree like this:原创 2016-04-19 07:57:51 · 218 阅读 · 0 评论 -
LeetCode 236. Lowest Common Ancestor of a Binary Tree
Given a binary tree, find the lowest common ancestor (LCA) of two given nodes in the tree.The problem will get interesting if the tree node has parent node. (....need to be continued)Tre原创 2016-04-16 10:03:21 · 261 阅读 · 0 评论 -
LeetCode 198. House Robber
You are a professional robber planning to rob houses along a street. Each house has a certain amount of money stashed, the only constraint stopping you from robbing each of them is that adjacent house原创 2016-04-21 06:37:38 · 257 阅读 · 0 评论 -
Find the Thief (Facebook Interview)
Suppose there is a thief and n rooms.We can only any door to check whether the thief is there or not. during the night, the theif can either move left one room or right one room. Given a sequence of原创 2016-06-15 07:26:35 · 621 阅读 · 0 评论 -
LeetCode 91. Decode Ways
There are two ways to solve this problem. One is to solve it front-back, the other is back-front.I currently only wrote the back-front method:Suppose we have such a string: a0, a1, a2.... ai, a原创 2016-05-09 13:05:59 · 868 阅读 · 0 评论 -
Next Larger Value in BST
This question need some clarification of the TreeNode structure. Suppose the given TreeNode struct is as following:Struct TreeNode {int val;TreeNode* left;TreeNode* right;TreeNode(int v) :原创 2016-07-06 04:41:31 · 288 阅读 · 0 评论 -
K sum
This is an extended question for 2 sum and 3 sum, 4 sum, DP problem int kSum(vector A, int k, int target) { // wirte your code here int n = A.size(); vector>> dp(n+1, vect原创 2016-06-15 12:38:59 · 201 阅读 · 0 评论 -
K consecutive maxSum
// given an array, find n consecutive number which forms the largest sum.#include "header.h"using namespace std;int maxConsecutive(vector& array, int n) { if(n <= 0) return 0; vector dp(array.原创 2016-07-05 11:58:04 · 253 阅读 · 0 评论 -
Minimum distance of three points
#include #include #include #include using namespace std;/* Given three arrays, A, B, C, you can get three element a,b,c from each of them. Find the minmum distance |a - b| + |b - c| + |c - a|原创 2016-05-11 12:18:48 · 247 阅读 · 0 评论 -
Highest Frequency number in given intervals.
find a number in the given intervals, make this point fall in as many intervals as possible. for example: [2, 3], [3, 5], [4, 5], [1, 5], [1, 2] return 4 or 5 Tips: using brute force.#inc原创 2016-06-03 00:47:46 · 200 阅读 · 0 评论 -
Count number of Palindrome Substring numbers.
/* how many palindrome substring in a given string. exp: "aba" return 4, "abba" return 6.*/#include #include using namespace std;int palindromeSubs(string str) { if(str.size() <= 1) return原创 2016-06-03 01:07:03 · 256 阅读 · 0 评论 -
Three Sum Variation.
/* find three numbers that sums to 0, every number can be used repeatly. (Someone said it can be solved using hashMap?) Follow up: what if any K numbers.*/#include #include #include using nam原创 2016-06-03 04:20:56 · 339 阅读 · 0 评论 -
Selected Numbers Characters permutation.
/* Given a set contains {'a', 'b', 'c'} and an integer K, if K == 2 return aa, ab, ac, ba, bb, bc, ca, cb, cc Follow up: the output contains different characters. Follow up: how to realize it原创 2016-06-03 08:34:18 · 230 阅读 · 0 评论 -
Manhaten Distance
/* Given set of points in 2d grid space. Find a grid point such that sum of distance from all the points to this given common point is minimum.*/#include #include #include using namespace std原创 2016-06-03 09:02:42 · 249 阅读 · 0 评论 -
Get One Valid parentheses Pair
Best Method I have seen so far. Scan the target string from left to right, and then from right to left. Use a counter to remember the valid parentheses.#include #include #include #include using原创 2016-06-03 23:11:44 · 255 阅读 · 0 评论 -
LeetCode. 314 Binary Tree Vertical Order Traversal
The basic idea to attach each node a col number. When goes to node->left. col -1, goes to right, col + 1. It will make things easier using a hashmap to store the nodes and correpsonding col number.原创 2016-04-27 01:46:41 · 326 阅读 · 0 评论 -
Flatten BST to Double Linked List
Two ways:1: recursion, to transform in in-order.2: Iterative, BFS way./* Flatten BST into linkedlist (in-order).*/#include #include #include using namespace std;struct TreeNode { int原创 2016-06-04 12:03:15 · 267 阅读 · 0 评论 -
Max Number of A's given four keys
/* Imagine you have a special keyboard with following four keys: Key 1: Prints 'A' on screenKey 2: (Ctrl-A): Select screen Key 3: (Ctrl-C): Copy selection to bufferKey 4: (Ctrl-V): Print buffer on s原创 2016-06-09 06:31:26 · 274 阅读 · 0 评论 -
Facebook Phone Interview: 3, 4 Sum (Easy)
Facebook really usually has a high frequency of posting repetitive problems.This one is the typical 3Sum, 4Sum problem.Given an input array and a target value, find whether there are three/four原创 2016-03-23 09:57:28 · 371 阅读 · 0 评论 -
Maximum value's random index
#include #include #include #include #include using namespace std;// naive method// Go through the array once, find the max and the number of occurrences (n)// Generate a random number (r) bet原创 2016-06-05 09:11:35 · 308 阅读 · 0 评论 -
Remove Nested Comments.
Comments can be single line using //, or multiple line using /* */We can use two flags to make the begin and end of two types of comments.string removeComments(string str) { string res; bool s原创 2016-06-06 00:47:55 · 303 阅读 · 0 评论 -
Print nodes in a given range of BST
I am stupid..... this is a MS interview question.Pseudo code void printNode(root) { stack nodes; while(!root || !nodes.empty()) { if(root) { nodes.push(root); Node* tmp = nod原创 2016-06-07 06:17:16 · 293 阅读 · 0 评论 -
Task Arrangement -- incomplete
Task schedule: Given a sequence of task like A B C, and a coldtime, which means you need to wait for that much time to start next[same] task. Now---Input: string , nOutput: the best task finishing原创 2016-06-06 10:00:59 · 465 阅读 · 0 评论 -
LeetCode 322. Coin Change
General DP question.#include #include #include using namespace std;/* You are given coins of different denominations and a total amount of money amount. write a function to compute the fe原创 2016-05-02 02:25:40 · 310 阅读 · 0 评论 -
Subarray Sum to the given target value
Question: check if there is a subarray sum equals to the given target.This question should ask for clarifications. Whether the inputs are all positive, or it has negative numbers.1: If all the num原创 2016-07-07 06:13:00 · 543 阅读 · 0 评论 -
LeetCode 122. 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 dayi.Design an algorithm to find the maximum profit. You may complete as many transactions as you like (ie, buy one原创 2016-04-11 01:46:52 · 288 阅读 · 0 评论