leetcode
算法
农夫程序员
拥有一个开挂的人生,是我的向往,然而并没有。
展开
-
每日一题-5.三维形体的表面积
题目:在 N * N 的网格上,我们放置一些 1 * 1 * 1 的立方体。每个值 v = grid[i][j] 表示 v 个正方体叠放在对应单元格 (i, j) 上。请你返回最终形体的表面积。思考:首先将二维坐标系中的所有方块按照独立的进行计算表面积,即方块数*6,然后计算需要减去的值,两个方块相连,表面积减去2,即分为两步,1.当前坐标本身,需要减去的表面积为:(方块数-1)*2...原创 2020-03-25 13:19:19 · 202 阅读 · 0 评论 -
每日一题-4.链表的中间节点
题目:给定一个带有头结点 head 的非空单链表,返回链表的中间结点。如果有两个中间结点,则返回第二个中间结点。示例1:输入:[1,2,3,4,5]输出:此列表中的结点 3 (序列化形式:[3,4,5])返回的结点值为 3 。 (测评系统对该结点序列化表述是 [3,4,5])。注意,我们返回了一个 ListNode 类型的对象 ans,这样:ans.val = 3, ans.nex...原创 2020-03-23 11:29:54 · 164 阅读 · 0 评论 -
leetcode-27.移除元素
题目:给你一个数组 nums 和一个值 val,你需要 原地 移除所有数值等于 val 的元素,并返回移除后数组的新长度。不要使用额外的数组空间,你必须仅使用 O(1) 额外空间并 原地 修改输入数组。元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。实例1:给定 nums = [3,2,2,3], val = 3,函数应该返回新的长度 2, 并且 nums 中的前两个元素...原创 2020-03-22 12:00:22 · 93 阅读 · 0 评论 -
每日一题-3.使数组唯一的最小值增量
题目:给定整数数组 A,每次 move 操作将会选择任意 A[i],并将其递增 1。返回使 A 中的每个值都是唯一的最少操作次数。实例1:输入:[1,2,2]输出:1解释:经过一次 move 操作,数组将变为 [1, 2, 3]。实例2:输入:[3,2,1,2,1,7]输出:6解释:经过 6 次 move 操作,数组将变为 [3, 4, 1, 2, 5, 7]。可以看出 5...原创 2020-03-22 11:29:59 · 164 阅读 · 0 评论 -
每日一题-2.最小的k个数
题目:输入整数数组 arr ,找出其中最小的 k 个数。例如,输入4、5、1、6、2、7、3、8这8个数字,则最小的4个数字是1、2、3、4。实例1:输入:arr = [3,2,1], k = 2输出:[1,2] 或者 [2,1]实例2:输入:arr = [0,1,2,1], k = 1输出:[0]限制:0 <= k <= arr.length <= 100...原创 2020-03-22 11:12:57 · 235 阅读 · 0 评论 -
每日一题-1.最长回文串
题目:给定一个包含大写字母和小写字母的字符串,找到通过这些字母构造成的最长的回文串。在构造过程中,请注意区分大小写。比如 “Aa” 不能当做一个回文字符串。注意:假设字符串的长度不会超过 1010。实例1:输入:"abccccdd"输出:7解释:我们可以构造的最长的回文串是"dccaccd", 它的长度是 7。思考一:简单思路,字符成对出现,将字符依次放入到list...原创 2020-03-19 15:17:47 · 190 阅读 · 0 评论