Foreign interview questions
LzyRapX
Just For Fun .
展开
-
Google 2016 面试题6 | Count of Smaller Numbers After Self(数组计数)
Google 2016 面试题6 | Count of Smaller Numbers After Self(数组计数)题目描述 给定一个数组nums,返回一个计数数组count,count[i]表示nums中第i个右边有多少个数小于nums[i]Example:nums = [5, 2, 6, 1]输出[2,1,1,0]分析解答原创 2016-03-24 17:22:13 · 2083 阅读 · 0 评论 -
Facebook 2016 面试题1 | 递增三元组子序列
题目描述 给出一个无序的整数序列,返回是否存在递增的三元组子序列。如果存在 i, j, k 使得 arr[i]即返回true;如果不存在则返回false。请给出一个O(N)时间复杂度以及O(1)额外空间的算法。Example 1:[1, 2, 3, 4, 5]返回true。Example 2:[5, 4, 3, 2, 1]返回false。原创 2016-03-24 17:19:13 · 3662 阅读 · 1 评论 -
Google 2016 面试题5 | 岛屿计数2
Google 2016 面试题5 | 岛屿计数2题目描述给出一个m行n列的网格地图,每个位置为0或1,0表示海水1表示陆地。一开始地图全为0(没有陆地)。每次在一个位置加入一块陆地,返回此时地图中陆地的总块数(相邻陆地统计时为同一块陆地)。Example:操作#1: addLand(0, 0) turns the water at grid[0][0] in原创 2016-03-24 17:24:11 · 4637 阅读 · 0 评论 -
Google面试题 3| 矩阵中的最长上升路径
Google面试题 3| 矩阵中的最长上升路径题目描述给出一个数字矩阵,寻找一条最长上升路径,每个位置只能向上下左右四个位置移动。Example:返回 4,最长上升路径是[1, 2, 6, 9].分析解答最直观的做法是穷举每一个数字作为起点,dfs寻找最长上升路径,时间复杂度是指数级别的。仔细思考dfs有些盲目,此题中的最长上原创 2016-03-24 17:27:11 · 6634 阅读 · 0 评论 -
Microsoft 2016 面试题1 | 最大二叉搜索子树
Microsoft 2016 面试题1 | 最大二叉搜索子树题目描述给出一棵二叉树,找出其最大的二叉搜索子树,最大指包含的点数最多。Example :此二叉树的最大二叉子树大小为3,如下所示。输出3即可。分析解答一棵二叉树为二叉搜索树当且仅当其左右子树均为二叉搜索树,且根节点的值在左子树的最大值和右子树的最小值之间。因原创 2016-03-24 18:09:19 · 1738 阅读 · 0 评论 -
Google 2016 面试题 2 | 摆动排序 II
Google 2016 面试题 2 | 摆动排序 II题目描述 给出一个整数数组nums,重新排列nums使得nums[0] nums[2] Example:nums = [1, 5, 1, 1, 6, 4], 一个可能的答案是[1, 4, 1, 5, 1, 6]数据保证必定有解。分析解答本题有一种简单的做法,先快速排序,然后把原创 2016-03-24 17:29:08 · 3346 阅读 · 1 评论 -
Google 2016 面试题2 | 不构造树的情况下验证先序遍历
Google 2016 面试题2 | 不构造树的情况下验证先序遍历题目描述给出一个字符序列,问该序列是否是一棵合法的二叉树的先序遍历?找到一种不需要构造二叉树的方法。For example:"9,3,4,#,#,1,#,#,2,#,6,#,#"是下面这颗二叉树的先序遍历。其中#代表空节点。分析解答通过观察上图中二叉树我们可以发现,原创 2016-03-24 17:30:53 · 973 阅读 · 0 评论 -
Google 2016 面试题 | 数组补丁
Google 2016 面试题 | 数组补丁题目描述 给出一个从小到大排好序的整数数组nums和一个整数n,在数组中添加若干个补丁(元素)使得[1,n]的区间内的所有数都可以表示成nums中若干个数的和。返回最少需要添加的补丁个数。Example 1:nums =[1, 3],n = 6返回1,表示至少需要添加1个数{2},才可以表示原创 2016-03-24 17:32:50 · 1155 阅读 · 0 评论