摘要: 给定整数数组 A,每次 move 操作将会选择任意 A[i],并将其递增 1。 返回使 A 中的每个值都是唯一的最少操作次数。 示例 1: 输入:[1,2,2]输出:1解释:经过一次 move 操作,数组将变为 [1, 2, 3]。示例 2: 输入:[3,2,1,2,1,7]输出:6解释:经过 6 阅读全文
posted @ 2020-03-22 18:57 zjcfrancis 阅读(151) 评论(0) 推荐(0) 编辑
摘要: 有两个容量分别为 x升 和 y升 的水壶以及无限多的水。请判断能否通过使用这两个水壶,从而可以得到恰好 z升 的水? 如果可以,最后请用以上水壶中的一或两个来盛放取得的 z升 水。 你允许: 装满任意一个水壶 清空任意一个水壶 从一个水壶向另外一个水壶倒水,直到装满或者倒空 示例 1: (From 阅读全文
posted @ 2020-03-21 10:15 zjcfrancis 阅读(265) 评论(0) 推荐(0) 编辑
摘要: 给定一个包含大写字母和小写字母的字符串,找到通过这些字母构造成的最长的回文串。 在构造过程中,请注意区分大小写。比如 "Aa" 不能当做一个回文字符串。 注意:假设字符串的长度不会超过 1010。 示例 1: 输入: "abccccdd" 输出: 7 解释: 我们可以构造的最长的回文串是"dccac 阅读全文
posted @ 2020-03-19 14:21 zjcfrancis 阅读(150) 评论(0) 推荐(0) 编辑
摘要: 将两个有序链表合并为一个新的有序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 示例: 输入:1->2->4, 1->3->4 输出:1->1->2->3->4->4 思路: 因为两个列表都是有序列表,可以直接进行递归调用,有序地从两个链表中取节点拼接成新的链表。 代码: /** * 阅读全文
posted @ 2020-03-18 19:46 zjcfrancis 阅读(113) 评论(0) 推荐(0) 编辑
摘要: 思路: 利用题目条件,从右上角看,矩阵是一个二叉搜索树,往左变小,往下变大。 因此可以从右上角开始,如果当前位置元素比 target 大,则行 row++; 如果当前位置元素比 target 小,则列 col--。 这样可以把时间复杂度从暴力搜索的O(nm)降到O(n+m) 代码: 时间复杂度O(m 阅读全文
posted @ 2020-03-18 16:58 zjcfrancis 阅读(166) 评论(0) 推荐(0) 编辑
摘要: 思路1:原地置换 因为数组长度为n,所有数字都在0~n-1的范围内,所以假如数组中数字不重复,则数组元素的下标等于数组元素的值。 在此基础上,遍历数组,将元素放到值所对应的索引处。如果该索引处已存在该元素,则该元素重复,返回结果。 代码: 时间复杂度O(n),空间复杂度O(1) class Solu 阅读全文
posted @ 2020-03-18 13:48 zjcfrancis 阅读(138) 评论(0) 推荐(0) 编辑
摘要: 矩形以列表 [x1, y1, x2, y2] 的形式表示,其中 (x1, y1) 为左下角的坐标,(x2, y2) 是右上角的坐标。 如果相交的面积为正,则称两矩形重叠。需要明确的是,只在角或边接触的两个矩形不构成重叠。 给出两个矩形,判断它们是否重叠并返回结果。 示例 1: 输入:rec1 = [ 阅读全文
posted @ 2020-03-18 11:58 zjcfrancis 阅读(158) 评论(0) 推荐(0) 编辑
摘要: 数组的每个索引做为一个阶梯,第 i个阶梯对应着一个非负数的体力花费值 cost[i](索引从0开始)。 每当你爬上一个阶梯你都要花费对应的体力花费值,然后你可以选择继续爬一个阶梯或者爬两个阶梯。 您需要找到达到楼层顶部的最低花费。在开始时,你可以选择从索引为 0 或 1 的元素作为初始阶梯。 示例  阅读全文
posted @ 2020-01-15 19:55 zjcfrancis 阅读(103) 评论(0) 推荐(0) 编辑
摘要: 编写一个程序,找出第 n 个丑数。 丑数就是只包含质因数 2, 3, 5 的正整数。 示例: 输入: n = 10输出: 12解释: 1, 2, 3, 4, 5, 6, 8, 9, 10, 12 是前 10 个丑数。说明: 1 是丑数。n 不超过1690。 来源:力扣(LeetCode)链接:htt 阅读全文
posted @ 2020-01-14 18:28 zjcfrancis 阅读(151) 评论(0) 推荐(0) 编辑
摘要: 给定长度为 n 的整数数组 nums,其中 n > 1,返回输出数组 output ,其中 output[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积。 示例: 输入: [1,2,3,4]输出: [24,12,8,6]说明: 请不要使用除法,且在 O(n) 时间复杂度内完成此题。 阅读全文
posted @ 2020-01-14 17:06 zjcfrancis 阅读(95) 评论(0) 推荐(0) 编辑