摘要: 给定一个由整数组成的非空数组所表示的非负整数,在该数的基础上加一。 最高位数字存放在数组的首位, 数组中每个元素只存储一个数字。 你可以假设除了整数 0 之外,这个整数不会以零开头。 示例 1: 示例 2: 参考解法: 阅读全文
posted @ 2019-04-03 18:37 twoheads 阅读(210) 评论(0) 推荐(0)
摘要: 最小覆盖子串(hard) (不会) 给定一个字符串 S 和一个字符串 T,请在 S 中找出包含 T 所有字母的最小子串。 示例: 说明: 如果 S 中不存这样的子串,则返回空字符串 ""。 如果 S 中存在这样的子串,我们保证它是唯一的答案。 关键:滑动窗口 参考 https://www.nowco 阅读全文
posted @ 2019-04-03 17:44 twoheads 阅读(388) 评论(0) 推荐(0)
摘要: (1 pass 一维动态规划) 爬楼梯(easy) 假设你正在爬楼梯。需要 n 阶你才能到达楼顶。 每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢? 注意:给定 n 是一个正整数。 示例 1: 示例 2: 一维动态规划: 阅读全文
posted @ 2019-04-03 16:32 twoheads 阅读(383) 评论(0) 推荐(0)
摘要: (主要是越界问题) 实现 int sqrt(int x) 函数。 计算并返回 x 的平方根,其中 x 是非负整数。 由于返回类型是整数,结果只保留整数的部分,小数部分将被舍去。 示例 1: 示例 2: 错误原因是数组越界,int最大开根号也就46340.9,从0~46340之间找到n,n的平方小于x 阅读全文
posted @ 2019-04-03 15:16 twoheads 阅读(269) 评论(0) 推荐(0)
摘要: (1 pass) 以 Unix 风格给出一个文件的绝对路径,你需要简化它。或者换句话说,将其转换为规范路径。 在 Unix 风格的文件系统中,一个点(.)表示当前目录本身;此外,两个点 (..) 表示将目录切换到上一级(指向父目录);两者都可以是复杂相对路径的组成部分。更多信息请参阅:Linux / 阅读全文
posted @ 2019-04-03 14:36 twoheads 阅读(171) 评论(0) 推荐(0)
摘要: 给定一个 m x n 的矩阵,如果一个元素为 0,则将其所在行和列的所有元素都设为 0。请使用原地算法。 示例 1: 示例 2: 进阶: 一个直接的解决方案是使用 O(mn) 的额外空间,但这并不是一个好的解决方案。 一个简单的改进方案是使用 O(m + n) 的额外空间,但这仍然不是最好的解决方案 阅读全文
posted @ 2019-04-03 11:48 twoheads 阅读(170) 评论(0) 推荐(0)
摘要: (较简单,但犯错太多) 编写一个高效的算法来判断 m x n 矩阵中,是否存在一个目标值。该矩阵具有如下特性: 每行中的整数从左到右按升序排列。 每行的第一个整数大于前一行的最后一个整数。 示例 1: 示例 2: 执行用时 : 1 ms, 在Search a 2D Matrix的Java提交中击败了 阅读全文
posted @ 2019-04-03 09:53 twoheads 阅读(177) 评论(0) 推荐(0)
摘要: (1过,解法不好,看參考荷兰国旗问题解法) 给定一个包含红色、白色和蓝色,一共 n 个元素的数组,原地对它们进行排序,使得相同颜色的元素相邻,并按照红色、白色、蓝色顺序排列。 此题中,我们使用整数 0、 1 和 2 分别表示红色、白色和蓝色。 注意:不能使用代码库中的排序函数来解决这道题。 示例: 阅读全文
posted @ 2019-04-03 09:51 twoheads 阅读(180) 评论(0) 推荐(0)