02 2018 档案
摘要:[抄题]: 水平面上有 N 座大楼,每座大楼都是矩阵的形状,可以用一个三元组表示 (start, end, height),分别代表其在x轴上的起点,终点和高度。大楼之间从远处看可能会重叠,求出 N 座大楼的外轮廓线。 外轮廓线的表示方法为若干三元组,每个三元组包含三个数字 (start, end,
阅读全文
摘要:[抄题]: Given n non-negative integers representing an elevation map where the width of each bar is 1, compute how much water it is able to trap after ra
阅读全文
摘要:[抄题]: 设计一个包含下面两个操作的数据结构:addWord(word), search(word) addWord(word)会在数据结构中添加一个单词。而search(word)则支持普通的单词查询或是只包含.和a-z的简易正则表达式的查询。 一个 . 可以代表一个任何的字母。 [暴力解法]:
阅读全文
摘要:[抄题]: 给出一个由小写字母组成的矩阵和一个字典。找出所有同时在字典和矩阵中出现的单词。一个单词可以从矩阵中的任意位置开始,可以向左/右/上/下四个相邻方向移动。 给出矩阵: 和字典: 返回 {"dog", "dad", "can", "again"} [暴力解法]: 时间分析: 空间分析: [思
阅读全文
摘要:[抄题]: Implement a trie with insert, search, and startsWith methods. Note:You may assume that all inputs are consist of lowercase letters a-z. [暴力解法]:
阅读全文
摘要:[抄题]: 给出 n 个节点,标号分别从 0 到 n - 1 并且给出一个 无向边的列表 (给出每条边的两个顶点), 写一个函数去判断这张`无向`图是否是一棵树。 给出n = 5 并且 edges = [[0, 1], [0, 2], [0, 3], [1, 4]], 返回 true. 给出n =
阅读全文
摘要:[抄题]: 给一个01矩阵,求不同的岛屿的个数。 0代表海,1代表岛,如果两个1相邻,那么这两个1属于同一个岛。我们只考虑上下左右为相邻。 [暴力解法]: 时间分析: 空间分析: [思维问题]: [一句话思路]: 找到一个岛,用dfs沉没一片岛。 [输入量]:空: 正常情况:特大:特小:程序里处理到
阅读全文
摘要:[抄题]: 以字符串的形式给定两个非负整数 num1 和 num2,返回 num1 和 num2 的乘积。 [暴力解法]: 时间分析: 空间分析: [思维问题]: 还要找到结果中第一位不等于0的数再添加,没想到 [一句话思路]: 套公式, 没有carry进位了,全都是对ans直接进行操作: ans[
阅读全文
摘要:反向存储,从左往右加 [抄题]: 你有两个用链表代表的整数,其中每个节点包含一个数字。数字存储按照在原来整数中相反的顺序,使得第一个数字位于链表的开头。写出一个函数将两个整数相加,用链表形式返回和。给出两个链表 3->1->5->null 和 5->9->2->null,返回 8->0->8->nu
阅读全文
摘要:[抄题]: 以字符串的形式给出两个非负整数 num1 和 num2,返回 num1和 num2 的和。 比如一个50位+一个100位。 给定 num1 = "123",num2 = "45" 返回 "168" [暴力解法]: 时间分析: 空间分析: [思维问题]: [一句话思路]: [输入量]:空:
阅读全文
摘要:[抄题]: 给定两个 稀疏矩阵 A 和 B,返回AB的结果。您可以假设A的列数等于B的行数。 [暴力解法]: 时间分析: 空间分析: [思维问题]: [一句话思路]: 如果为零则不相乘,优化常数的复杂度。 [输入量]:空: 正常情况:特大:特小:程序里处理到的特殊情况:异常情况(不合法不合理的输入)
阅读全文
摘要:[抄题]: You are given an n x n 2D matrix representing an image. Rotate the image by 90 degrees (clockwise). Note:You have to rotate the image in-place,
阅读全文
摘要:[抄题]: 给定一个仅包含数字 0 - 9 的字符串和一个目标值,返回在数字之间添加了 二元 运算符(不是一元)+, - 或 * 之后所有能得到目标值的情况。 [暴力解法]: 时间分析: 空间分析: [思维问题]: [一句话思路]: [输入量]:空: 正常情况:特大:特小:程序里处理到的特殊情况:异
阅读全文
摘要:[抄题]: 给出 n = 8 返回 [[2,2,2],[2,4]] // 8 = 2 x 2 x 2 = 2 x 4 [暴力解法]: 时间分析: 空间分析: [思维问题]: [一句话思路]: 类似于全排列permutation, 用helper,忘了 [输入量]:空: 正常情况:特大:特小:程序里处
阅读全文
摘要:[抄题]: Given a digit string excluded 01, return all possible letter combinations that the number could represent. A mapping of digit to letters (just l
阅读全文
摘要:[抄题]: 您将获得一个使用这三个可能值初始化的 m×n 2D 网格。-1 - 墙壁或障碍物。 0 - 门。 INF - Infinity是一个空房间。我们使用值 2 ^ 31 - 1 = 2147483647 来表示INF,您可以假设到门的距离小于 2147483647。在代表每个空房间的网格中填
阅读全文
摘要:[抄题]: 给一个二维的矩阵,包含 'X' 和 'O', 找到所有被 'X' 围绕的区域,并用 'X' 填充满。 样例 给出二维矩阵: X X X X X O O X X X O X X O X X 把被 'X' 围绕的区域填充之后变为: X X X X X X X X X X X X X O X
阅读全文
摘要:原文出处:Java 中关于String的空对象(null) ,空值(empty),空格 定义 空对象: String s = null; 空对象是指定义一个对象s,但是没有给该对象分配空间,即没有实例化该对象,因此,空对象在调用所有对象方法时候都会抛出异常,如s.length(), s.isEmpt
阅读全文
摘要:[抄题]: 给定二叉树,返回其节点值的垂直遍历顺序。 (即逐列从上到下)。如果两个节点在同一行和同一列中,则顺序应 从左到右。 给定一个二叉树 {3,9,20,#,#,15,7} 返回垂直遍历顺序:[[9],[3,15],[20],[7]] 给定一个二叉树 {3,9,20,#,#,15,7} 返回垂
阅读全文
摘要:[抄题]: 给定一个二叉树,像这样收集树节点:收集并移除所有叶子,重复,直到树为空。 给出一个二叉树: 返回 [[4, 5, 3], [2], [1]]. [暴力解法]: 时间分析: 空间分析: [思维问题]: [一句话思路]: 相同高度的叶子节点在相同高度摘下来 [输入量]:空: 正常情况:特大:
阅读全文
摘要:[抄题]: 给定一个二叉树,其中所有右节点要么是具有兄弟节点的叶节点(有一个共享相同父节点的左节点)或空白,将其倒置并将其转换为树,其中原来的右节点变为左叶子节点。返回新的根节点。 您在真实的面试中是否遇到过这个题? Yes 给定一个二叉树,其中所有右节点要么是具有兄弟节点的叶节点(有一个共享相同父
阅读全文
摘要:[抄题]: 给定二叉搜索树(BST),将其转换为更大的树,使原始BST上每个节点的值都更改为在原始树中大于等于该节点值的节点值之和(包括该节点)。 Given a binary search Tree `{5,2,13}`: Return the root of new tree [暴力解法]: 时
阅读全文
摘要:[抄题]: 一个单词的缩写根据以下的形式。下面是一些缩写的例子 假设你有一个字典和给你一个单词,判断这个单词的缩写在字典中是否是唯一的。当字典中的其他单词的缩写均与它不同的时候, 这个单词的缩写是唯一的. [暴力解法]: 1把缩写全部存一遍,再一个个搜索是否为重复,不重复unique 时间分析: 空
阅读全文
摘要:[抄题]: 给出一个字符串。找到字符串中第一个不重复的字符然后返回它的下标。如果不存在这样的字符,返回 -1。 给出字符串 s = "lintcode",返回 0。给出字符串 s = "lovelintcode",返回 2。 [暴力解法]: 时间分析: 空间分析: [思维问题]: [一句话思路]:
阅读全文
摘要:[抄题]: 给定一个字符串 s 和一个 非空字符串 p ,找到在 s 中所有关于 p 的字谜的起始索引。字符串仅由小写英文字母组成,字符串 s 和 p 的长度不得大于 40,000。输出顺序无关紧要. 样例 给出字符串 s = "cbaebabacd" p = "abc"返回 [0, 6] 子串起始
阅读全文
摘要:[抄题]: 给出若干闭合区间,合并所有重叠的部分。 给出的区间列表 => 合并后的区间列表: [暴力解法]: 时间分析: 空间分析: [思维问题]: [一句话思路]: 区间类问题,先把起点排序才能具有逐个合并的能力和性质 [输入量]:空: 正常情况:特大:特小:程序里处理到的特殊情况:异常情况(不合
阅读全文
摘要:[抄题]: 假设你和 n 个人在一个聚会中(标记为 0 到 n - 1),其中可能存在一个名人。名人的定义是所有其他 n - 1 人都认识他/她,但他/她不知道任何一个。现在你想要找出这个名人是谁或者验证这个名人不存在。你唯一可以做的事情就是提出如下问题:“你好,A,你认识B吗?” 来获取A是否认识
阅读全文
摘要:13. Roman to Integer [抄题]: [暴力解法]: 时间分析: 空间分析: [思维问题]: [一句话思路]: [输入量]:空: 正常情况:特大:特小:程序里处理到的特殊情况:异常情况(不合法不合理的输入): [画图]: [一刷]: [二刷]: [三刷]: [四刷]: [五刷]: [
阅读全文
摘要:[抄题]: 接口:int read4(char * buf)一次从文件中读取 4 个字符。返回值是实际读取的字符数。 例如,如果文件中只剩下 3 个字符,则返回 3。通过使用read4 接口,实现从文件读取 n 个字符的函数int read(char * buf,int n)。 [暴力解法]: 时间
阅读全文
摘要:[抄题]: 给出一串整数流和窗口大小,计算滑动窗口中所有整数的平均值。 [暴力解法]: 来一个数就存数组,for 循环最近size个数求和取平均返回。 时间分析:size 空间分析:n [思维问题]: 不知道为什么要定义全局变量:因为两个函数中都要用。 先提前声明,在函数中分别具体实现。 [一句话思
阅读全文
摘要:[抄题]: [思维问题]: [一句话思路]: [输入量]:空: 正常情况:特大:特小:程序里处理到的特殊情况:异常情况(不合法不合理的输入): [画图]: [一刷]: [二刷]: [三刷]: [四刷]: [五刷]: [五分钟肉眼debug的结果]: [总结]: [复杂度]:Time complexi
阅读全文
摘要:[抄题]: 给出三个字符串:s1、s2、s3,判断s3是否由s1和s2交叉构成。(洗牌) 比如 s1 = "aabcc" s2 = "dbbca" - 当 s3 = "aadbbcbcac",返回 true. - 当 s3 = "aadbbbaccc", 返回 false. [思维问题]: [一句话
阅读全文
摘要:[抄题]: 给出字符串S和字符串T,计算S的不同的子序列中T出现的个数。 子序列字符串是原始字符串通过删除一些(或零个)产生的一个新的字符串,并且对剩下的字符的相对位置没有影响。(比如,“ACE”是“ABCDE”的子序列字符串,而“AEC”不是)。 Here is an example:S = "r
阅读全文
摘要:[抄题]: 给出两个单词word1和word2,计算出将word1 转换为word2的最少操作次数。 你总共三种操作方法: 插入一个字符 删除一个字符 替换一个字符 [思维问题]: [一句话思路]: 分析双序列变换的所有情况 [输入量]:空: 正常情况:特大:特小:程序里处理到的特殊情况:异常情况(
阅读全文
摘要:[抄题]: 给定一个字符串s,将s分割成一些子串,使每个子串都是回文。 返回s符合要求的的最少分割次数。 [思维问题]: 不知道要用预处理字符串降低复杂度 [一句话思路]: 先把预处理获得s中回文串的结果放在数组中,之后直接调用 [输入量]:空: 正常情况:特大:特小:程序里处理到的特殊情况:异常情
阅读全文
摘要:[抄题]: 给出一个字符串s和一个词典,判断字符串s是否可以被空格切分成一个或多个出现在字典中的单词。 s = "lintcode" dict = ["lint","code"] 返回 true 因为"lintcode"可以被空格切分成"lint code" [思维问题]: 看到字符串就怕:还是要掌
阅读全文
摘要:[抄题]: 往上走台阶 最长上升子序列问题是在一个无序的给定序列中找到一个尽可能长的由低到高排列的子序列,这种子序列不一定是连续的或者唯一的。 最长上升子序列问题是在一个无序的给定序列中找到一个尽可能长的由低到高排列的子序列,这种子序列不一定是连续的或者唯一的。 最长上升子序列问题是在一个无序的给定
阅读全文
摘要:跳跃游戏 1 [抄题]: [思维问题]: [一句话思路]: [输入量]:空: 正常情况:特大:特小:程序里处理到的特殊情况:异常情况(不合法不合理的输入): [画图]: [一刷]: [二刷]: [三刷]: [四刷]: [五刷]: [五分钟肉眼debug的结果]: [总结]: [复杂度]:Time c
阅读全文
摘要:[抄题]: 假设你正在爬楼梯,需要n步你才能到达顶部。但每次你只能爬一步或者两步,你能有多少种不同的方法爬到楼顶部? [思维问题]: [一句话思路]: 生兔子问题:把大数赋给小数 [输入量]:空: 正常情况:特大:特小:程序里处理到的特殊情况:异常情况(不合法不合理的输入): [画图]: [一刷]:
阅读全文
摘要:[抄题]: 有一个机器人的位于一个 m × n 个网格左上角。 机器人每一时刻只能向下或者向右移动一步。机器人试图达到网格的右下角。 问有多少条不同的路径? [思维问题]: 以为要用count来计数:不是,初始化sum[][]二维数组,初始化数组的具体值来计数 [一句话思路]: 思考哪些方案应该初始
阅读全文
摘要:[抄题]: 给定一个只含非负整数的m*n网格,找到一条从左上角到右下角的可以使数字和最小的路径。 [思维问题]: [一句话思路]: 和数字三角形基本相同 [输入量]:空: 正常情况:特大:特小:程序里处理到的特殊情况:异常情况(不合法不合理的输入): [画图]: [一刷]: [二刷]: [三刷]:
阅读全文
摘要:从上到下用DP。 [抄题]: 给定一个数字三角形,找到从顶部到底部的最小路径和。每一步可以移动到下面一行的相邻数字上。 比如,给出下列数字三角形: 从顶到底部的最小路径和为11 ( 2 + 3 + 5 + 1 = 11)。 [思维问题]: 不知道要初始化,把距离定义好。 [一句话思路]: [输入量]
阅读全文
摘要:找出最短路径 [抄题]: Given two words (beginWord and endWord), and a dictionary's word list, find the length of shortest transformation sequence from beginWord
阅读全文
摘要:不能重复: [抄题]: 给出一个候选数字的set(C)和目标数字(T),找到C中所有的组合,使找出的数字和为T。C中的数字可以无限制重复被选取。 例如,给出候选数组[2,3,6,7]和目标数字7,所求的解为: [7], [2,2,3] [思维问题]: [一句话思路]: [输入量]:空: 正常情况:特
阅读全文
摘要:[抄题]: 给定一个字符串s,将s分割成一些子串,使每个子串都是回文串。 返回s所有可能的回文串分割方案。 给出 s = "aab",返回 [思维问题]: [一句话思路]: [输入量]:空: 正常情况:特大:特小:程序里处理到的特殊情况:异常情况(不合法不合理的输入): [画图]: [一刷]: [二
阅读全文
摘要:[抄题]: n皇后问题是将n个皇后放置在n*n的棋盘上,皇后彼此之间不能相互攻击。 给定一个整数n,返回所有不同的n皇后问题的解决方案。 每个解决方案包含一个明确的n皇后放置布局,其中“Q”和“.”分别表示一个女王和一个空位置。 对于4皇后问题存在两种解决的方案: [ [".Q..", // Sol
阅读全文
摘要:无重复 [抄题]: Given a collection of numbers, return all possible permutations. For example,[1,2,3] have the following permutations:[1,2,3], [1,3,2], [2,1,
阅读全文
摘要:[抄题]: 现在你总共有 n 门课需要选,记为 0 到 n - 1.一些课程在修之前需要先修另外的一些课程,比如要学习课程 0 你需要先学习课程 1 ,表示为[0,1]给定n门课以及他们的先决条件,判断是否可能完成所有课程? 给定 n = 2,先决条件为 [[1,0]] 返回 true给定 n =
阅读全文

浙公网安备 33010602011771号