随笔分类 -  Leetcode

摘要:你是一个专业的小偷,计划偷窃沿街的房屋,每间房内都藏有一定的现金。这个地方所有的房屋都围成一圈,这意味着第一个房屋和最后一个房屋是紧挨着的。同时,相邻的房屋装有相互连通的防盗系统,如果两间相邻的房屋在同一晚上被小偷闯入,系统会自动报警。 给定一个代表每个房屋存放金额的非负整数数组,计算你在不触动警报 阅读全文
posted @ 2020-01-17 16:01 阿十三 阅读(125) 评论(0) 推荐(0)
摘要:在给定的网格中,每个单元格可以有以下三个值之一: 值 0 代表空单元格;值 1 代表新鲜橘子;值 2 代表腐烂的橘子。每分钟,任何与腐烂的橘子(在 4 个正方向上)相邻的新鲜橘子都会腐烂。 返回直到单元格中没有新鲜橘子为止所必须经过的最小分钟数。如果不可能,返回 -1。 示例 1: 输入:[[2,1 阅读全文
posted @ 2020-01-03 11:37 阿十三 阅读(351) 评论(0) 推荐(0)
摘要:这里有一个非负整数数组 arr,你最开始位于该数组的起始下标 start 处。当你位于下标 i 处时,你可以跳到 i + arr[i] 或者 i - arr[i]。 请你判断自己是否能够跳到对应元素值为 0 的 任意 下标处。 注意,不管是什么情况下,你都无法跳到数组之外。 示例 1: 输入:arr 阅读全文
posted @ 2020-01-02 14:52 阿十三 阅读(180) 评论(0) 推荐(0)
摘要:题目链接 给定一个整数数组 a,其中1 ≤ a[i] ≤ n (n为数组长度), 其中有些元素出现两次而其他元素出现一次。 找到所有出现两次的元素。 你可以不用到任何额外空间并在O(n)时间复杂度内解决这个问题吗? 示例: 输入:[4,3,2,7,8,2,3,1] 输出:[2,3] 思路: 因为数据 阅读全文
posted @ 2019-12-31 15:43 阿十三 阅读(299) 评论(0) 推荐(0)
摘要:题目链接 给定一个整数序列:a1, a2, ..., an,一个132模式的子序列 ai, aj, ak 被定义为:当 i < j < k 时,ai < ak < aj。设计一个算法,当给定有 n 个数字的序列时,验证这个序列中是否含有132模式的子序列。 注意:n 的值小于15000。 示例1: 阅读全文
posted @ 2019-12-30 15:38 阿十三 阅读(188) 评论(0) 推荐(0)
摘要:题目链接: 老师想给孩子们分发糖果,有 N 个孩子站成了一条直线,老师会根据每个孩子的表现,预先给他们评分。 你需要按照以下要求,帮助老师给这些孩子分发糖果: 每个孩子至少分配到 1 个糖果。相邻的孩子中,评分高的孩子必须获得更多的糖果。那么这样下来,老师至少需要准备多少颗糖果呢? 示例 1: 输入 阅读全文
posted @ 2019-12-25 15:58 阿十三 阅读(145) 评论(0) 推荐(0)
摘要:给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。 说明: 你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗? 示例 1: 示例 2: 1 public int singleNumber(int[] nums) { 2 Set<Int 阅读全文
posted @ 2018-12-02 21:52 阿十三 阅读(122) 评论(0) 推荐(0)
摘要:给定一个整数数组,判断是否存在重复元素。 如果任何值在数组中出现至少两次,函数返回 true。如果数组中每个元素都不相同,则返回 false。 示例 1: 示例 2: 示例 3: 1 public boolean containsDuplicate(int[] nums) { 2 HashMap<I 阅读全文
posted @ 2018-12-02 21:32 阿十三 阅读(168) 评论(0) 推荐(0)
摘要:给定一个字符串,验证它是否是回文串,只考虑字母和数字字符,可以忽略字母的大小写。 说明:本题中,我们将空字符串定义为有效的回文串。 示例 1: 示例 2: 1 package javacode; 2 3 class 验证回文串 { 4 public boolean isPalindrome(Stri 阅读全文
posted @ 2018-11-29 21:38 阿十三 阅读(105) 评论(0) 推荐(0)
摘要:给定一个字符串,请将字符串里的字符按照出现的频率降序排列。 示例 1: 示例 2: 示例 3: 然后在对结构体按照出现次序排序即可 阅读全文
posted @ 2018-11-28 20:54 阿十三 阅读(530) 评论(0) 推荐(0)
摘要:给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。 不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。 示例 1: 示例 2: 说明: 为什么返回数值是整数,但输出的答案是数组呢? 请注意,输入数组是以“引用”方 阅读全文
posted @ 2018-11-27 20:03 阿十三 阅读(139) 评论(0) 推荐(0)
摘要:给定一个由整数组成的非空数组所表示的非负整数,在该数的基础上加一。 最高位数字存放在数组的首位, 数组中每个元素只存储一个数字。 你可以假设除了整数 0 之外,这个整数不会以零开头。 示例 1: 示例 2: 1 int[] plusOne(int[] digits) { 2 boolean flag 阅读全文
posted @ 2018-11-19 21:16 阿十三 阅读(114) 评论(0) 推荐(0)
摘要:给定两个有序整数数组 nums1 和 nums2,将 nums2 合并到 nums1 中,使得 num1 成为一个有序数组。 说明: 初始化 nums1 和 nums2 的元素数量分别为 m 和 n。 你可以假设 nums1 有足够的空间(空间大小大于或等于 m + n)来保存 nums2 中的元素 阅读全文
posted @ 2018-11-17 19:33 阿十三 阅读(192) 评论(1) 推荐(0)
摘要:给定一个包含非负整数的 m x n 网格,请找出一条从左上角到右下角的路径,使得路径上的数字总和为最小。 说明:每次只能向下或者向右移动一步。 示例: 输入: [ [1,3,1], [1,5,1], [4,2,1] ] 输出: 7 解释: 因为路径 1→3→1→1→1 的总和最小。 思路:简单DPd 阅读全文
posted @ 2018-11-15 22:46 阿十三 阅读(119) 评论(0) 推荐(0)
摘要:给出一个区间的集合,请合并所有重叠的区间。 示例 1: 输入: [[1,3],[2,6],[8,10],[15,18]] 输出: [[1,6],[8,10],[15,18]] 解释: 区间 [1,3] 和 [2,6] 重叠, 将它们合并为 [1,6]. 示例 2: 输入: [[1,4],[4,5]] 阅读全文
posted @ 2018-11-14 23:12 阿十三 阅读(134) 评论(0) 推荐(0)
摘要:编写一个高效的算法来搜索 m x n 矩阵 matrix 中的一个目标值 target。该矩阵具有以下特性: 每行的元素从左到右升序排列。 每列的元素从上到下升序排列。 示例: 现有矩阵 matrix 如下: [ [1, 4, 7, 11, 15], [2, 5, 8, 12, 19], [3, 6 阅读全文
posted @ 2018-11-13 21:20 阿十三 阅读(464) 评论(0) 推荐(0)
摘要:给定一个非负整数数组 A,返回一个由 A 的所有偶数元素组成的数组,后面跟 A 的所有奇数元素。 你可以返回满足此条件的任何数组作为答案。 示例: 提示: 思路:用i指向0,j指向数组末尾 如果A[i]是奇数,A[j]是偶数,就交换 A[i]是偶数就i++;A[j]是奇数就j-- 1 int* so 阅读全文
posted @ 2018-11-12 21:10 阿十三 阅读(571) 评论(0) 推荐(0)
摘要:给定一个链表,返回链表开始入环的第一个节点。 如果链表无环,则返回 null。 说明:不允许修改给定的链表。 进阶: 你是否可以不用额外空间解决此题? 给定一个链表,返回链表开始入环的第一个节点。 如果链表无环,则返回 null。 说明:不允许修改给定的链表。 进阶: 你是否可以不用额外空间解决此题 阅读全文
posted @ 2018-11-11 20:53 阿十三 阅读(113) 评论(0) 推荐(0)
摘要:反转从位置 m 到 n 的链表。请使用一趟扫描完成反转。 说明: 1 ≤ m ≤ n ≤ 链表长度。 示例: 输入: 1->2->3->4->5->NULL, m = 2, n = 4 输出: 1->4->3->2->5->NULL思路:分成两个情况来写第一种:如果m=1,那就是一道反转链表,先翻转 阅读全文
posted @ 2018-11-10 18:09 阿十三 阅读(184) 评论(0) 推荐(0)
摘要:给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点。 示例: 说明: 给定的 n 保证是有效的。 思路:用快慢指针 对于每一个n,用第一个指针也就是快指针先跑n-1步, 然后再让两个指针同时跑,name当快指针跑到null时,满指针就跑到了要删除的节点 然后就先交换值,再把下一个节点的 阅读全文
posted @ 2018-11-09 18:54 阿十三 阅读(112) 评论(0) 推荐(0)