随笔分类 -  OJ

摘要:排序数组,就不多写了 https://leetcode-cn.com/problems/sort-an-array/ 数组中的第K个最大元素 在未排序的数组中找到第 k 个最大的元素。请注意,你需要找的是数组排序后的第 k 个最大的元素,而不是第 k 个不同的元素。 示例 1: 输入: [3,2,1 阅读全文
posted @ 2020-02-19 14:10 大老虎打老虎 阅读(189) 评论(0) 推荐(0)
摘要:输入某二叉树的前序遍历和中序遍历的结果,请重建该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。 例如,给出 前序遍历 preorder = [3,9,20,15,7]中序遍历 inorder = [9,3,15,20,7]返回如下的二叉树: 3 / \ 9 20 / \ 15 7 限 阅读全文
posted @ 2020-02-16 18:41 大老虎打老虎 阅读(166) 评论(0) 推荐(0)
摘要:给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。 示例 1: 输入: "abcabcbb"输出: 3 解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。示例 2: 输入: "bbbbb"输出: 1解释: 因为无重复字符的最长子串是 "b",所以其长度为 1。示例 3: 阅读全文
posted @ 2020-02-16 15:52 大老虎打老虎 阅读(385) 评论(0) 推荐(0)
摘要:在一个 n * m 的二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。 示例: 现有矩阵 matrix 如下: [ [1, 4, 7, 11, 15], [2, 5, 8, 12, 19] 阅读全文
posted @ 2020-02-15 18:39 大老虎打老虎 阅读(224) 评论(0) 推荐(0)
摘要:给定一个字符串 s,找到 s 中最长的回文子串。你可以假设 s 的最大长度为 1000。 示例 1: 输入: "babad"输出: "bab"注意: "aba" 也是一个有效答案。示例 2: 输入: "cbbd"输出: "bb" 解:这题我首先颠倒以下,用的最长公共子串的方法,发现有些情况下是错的, 阅读全文
posted @ 2020-02-15 17:39 大老虎打老虎 阅读(160) 评论(0) 推荐(0)
摘要:根据每日 气温 列表,请重新生成一个列表,对应位置的输入是你需要再等待多久温度才会升高超过该日的天数。如果之后都不会升高,请在该位置用 0 来代替。 例如,给定一个列表 temperatures = [73, 74, 75, 71, 69, 72, 76, 73],你的输出应该是 [1, 1, 4, 阅读全文
posted @ 2020-02-15 12:34 大老虎打老虎 阅读(147) 评论(0) 推荐(0)
摘要:I。给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格。 如果你最多只允许完成一笔交易(即买入和卖出一支股票),设计一个算法来计算你所能获取的最大利润。 注意你不能在买入股票前卖出股票。 示例 1: 输入: [7,1,5,3,6,4]输出: 5解释: 在第 2 天(股票价格 = 1)的时 阅读全文
posted @ 2020-02-14 22:08 大老虎打老虎 阅读(231) 评论(0) 推荐(0)
摘要:给定一个字符串s,找到其中最长的回文子序列。可以假设s的最大长度为1000。 示例 1:输入: "bbbab"输出: 4一个可能的最长回文子序列为 "bbbb"。 示例 2:输入: "cbbd"输出: 2一个可能的最长回文子序列为 "bb"。 解: 状态f[i][j] 表示 s 的第 i 个字符到第 阅读全文
posted @ 2020-02-11 22:50 大老虎打老虎 阅读(254) 评论(0) 推荐(0)
摘要:给定 n 个非负整数,用来表示柱状图中各个柱子的高度。每个柱子彼此相邻,且宽度为 1 。 求在该柱状图中,能够勾勒出来的矩形的最大面积。 以上是柱状图的示例,其中每个柱子的宽度为 1,给定的高度为 [2,1,5,6,2,3]。 图中阴影部分为所能勾勒出的最大矩形面积,其面积为 10 个单位。 示例: 阅读全文
posted @ 2020-02-08 21:36 大老虎打老虎 阅读(228) 评论(0) 推荐(0)
摘要:给定一个仅包含 0 和 1 的二维二进制矩阵,找出只包含 1 的最大矩形,并返回其面积。 示例: 输入:[ ["1","0","1","0","0"], ["1","0","1","1","1"], ["1","1","1","1","1"], ["1","0 阅读全文
posted @ 2020-02-08 18:48 大老虎打老虎 阅读(300) 评论(0) 推荐(0)
摘要:给定一个非负整数数组,你最初位于数组的第一个位置。 数组中的每个元素代表你在该位置可以跳跃的最大长度。 判断你是否能够到达最后一个位置。 示例 1: 输入: [2,3,1,1,4]输出: true解释: 我们可以先跳 1 步,从位置 0 到达 位置 1, 然后再从位置 1 跳 3 步到达最后一个位置 阅读全文
posted @ 2020-02-06 18:47 大老虎打老虎 阅读(115) 评论(0) 推荐(0)
摘要:给定一个非负整数数组,你最初位于数组的第一个位置。 数组中的每个元素代表你在该位置可以跳跃的最大长度。 你的目标是使用最少的跳跃次数到达数组的最后一个位置。 示例: 输入: [2,3,1,1,4]输出: 2解释: 跳到最后一个位置的最小跳跃数是 2。 从下标为 0 跳到下标为 1 的位置,跳 1 步 阅读全文
posted @ 2020-02-05 19:36 大老虎打老虎 阅读(131) 评论(0) 推荐(0)
摘要:题目描述 请实现一个函数,用来判断一颗二叉树是不是对称的。注意,如果一个二叉树同此二叉树的镜像是同样的,定义其为对称的。 解: 这道题首先想到的就是按前中后序的一种方法,塞入栈中进行压入弹出的方法 还有一种递归对比左右两树的方法 bool isSymmetricalDFS(TreeNode pRoo 阅读全文
posted @ 2020-02-04 18:28 大老虎打老虎 阅读(162) 评论(0) 推荐(0)
摘要:题目: 给定一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ?找出所有满足条件且不重复的三元组。 注意:答案中不可以包含重复的三元组。 示例: 给定数组 nums = [-1, 0, 1, 2, -1, -4], 满足要求的三 阅读全文
posted @ 2020-02-02 19:34 大老虎打老虎 阅读(424) 评论(0) 推荐(0)
摘要:对于最长连续子序列,见下题 题目描述 查找两个字符串a,b中的最长公共子串。若有多个,输出在较短串中最先出现的那个。 输入描述: 输入两个字符串 输出描述: 返回重复出现的字符 示例1 输入 复制 abcdefghijklmnop abcsafjklmnopqrstuvw 输出 复制 jklmnop 阅读全文
posted @ 2019-11-29 14:48 大老虎打老虎 阅读(515) 评论(0) 推荐(0)
摘要:在 O(n log n) 时间复杂度和常数级空间复杂度下,对链表进行排序。 示例 1: 输入: 4->2->1->3输出: 1->2->3->4示例 2: 输入: -1->5->3->4->0输出: -1->0->3->4->5 递归版:(不符合空间复杂度要求) 题目要求时间空间复杂度分别为O(nl 阅读全文
posted @ 2019-08-20 16:10 大老虎打老虎 阅读(208) 评论(0) 推荐(0)
摘要:再贴张排序的时间与空间复杂度的图 总结: 为什么堆排序的时间复杂度理想却很少被采用: 作者:qinzp链接:https://www.zhihu.com/question/23873747/answer/327295185来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。 阅读全文
posted @ 2019-08-19 20:31 大老虎打老虎 阅读(926) 评论(0) 推荐(0)
摘要:1 void heapify(int arr[], int n, int i) 2 { 3 int largest = i; // 将最大元素设置为堆顶元素 4 int l = 2 * i + 1; // left = 2*i + 1 5 int r = 2 * i + 2; // right = 阅读全文
posted @ 2019-08-19 15:43 大老虎打老虎 阅读(169) 评论(0) 推荐(0)
摘要:给定一个二叉树,判断其是否是一个有效的二叉搜索树。 假设一个二叉搜索树具有如下特征: 节点的左子树只包含小于当前节点的数。节点的右子树只包含大于当前节点的数。所有左子树和右子树自身必须也是二叉搜索树。示例 1: 输入: 2 / \ 1 3输出: true示例 2: 输入: 5 / \ 1 4 / \ 阅读全文
posted @ 2019-08-17 14:45 大老虎打老虎 阅读(270) 评论(0) 推荐(0)
摘要:给定一个二叉树,判断它是否是高度平衡的二叉树。 本题中,一棵高度平衡二叉树定义为: 一个二叉树每个节点 的左右两个子树的高度差的绝对值不超过1。 示例 1: 给定二叉树 [3,9,20,null,null,15,7] 3 / \ 9 20 / \ 15 7返回 true 。 示例 2: 给定二叉树 阅读全文
posted @ 2019-08-16 14:44 大老虎打老虎 阅读(179) 评论(0) 推荐(0)