04 2021 档案

摘要:题目: 给你一个整数数组 nums 。你需要选择 恰好 一个下标(下标从 0 开始)并删除对应的元素。请注意剩下元素的下标可能会因为删除操作而发生改变。 比方说,如果 nums = [6,1,7,4,1] ,那么: 选择删除下标 1 ,剩下的数组为 nums = [6,7,4,1] 。选择删除下标  阅读全文
posted @ 2021-04-28 15:11 堤苏白 阅读(106) 评论(0) 推荐(0) 编辑
摘要:题目: 给定一个 m x n 的矩阵,如果一个元素为 0 ,则将其所在行和列的所有元素都设为 0 。请使用 原地 算法。 进阶: 一个直观的解决方案是使用 O(mn) 的额外空间,但这并不是一个好的解决方案。 一个简单的改进方案是使用 O(m + n) 的额外空间,但这仍然不是最好的解决方案。 你能 阅读全文
posted @ 2021-04-27 20:53 堤苏白 阅读(60) 评论(0) 推荐(0) 编辑
摘要:题目: 给你一个字符串 path ,表示指向某一文件或目录的 Unix 风格 绝对路径 (以 '/' 开头),请你将其转化为更加简洁的规范路径。 在 Unix 风格的文件系统中,一个点(.)表示当前目录本身;此外,两个点 (..) 表示将目录切换到上一级(指向父目录);两者都可以是复杂相对路径的组成 阅读全文
posted @ 2021-04-27 20:21 堤苏白 阅读(54) 评论(0) 推荐(0) 编辑
摘要:题目: 给定一个由若干 0 和 1 组成的数组 A,我们最多可以将 K 个值从 0 变成 1 ,返回仅包含 1 的最长(连续)子数组的长度 输入例子1: [1,1,1,0,0,0,1,1,1,1,0],2 输出例子1: 6 例子说明1: 可以将输入中的第3个0和第4个0变成1,新数组为[1,1,1, 阅读全文
posted @ 2021-04-16 17:01 堤苏白 阅读(105) 评论(0) 推荐(0) 编辑
摘要:题目: 给定一个包含 m x n 个元素的矩阵(m 行, n 列),请按照顺时针螺旋顺序,返回矩阵中的所有元素 输入例子1: [[1, 2, 3, 4], [5, 6, 7, 8], [9,10,11,12] ] 输出例子1: [1,2,3,4,8,12,11,10,9,5,6,7] 代码: 1 i 阅读全文
posted @ 2021-04-16 16:58 堤苏白 阅读(120) 评论(0) 推荐(0) 编辑
摘要:题目: 一个由小写字母组成的字符串可以看成一些同一字母的最大碎片组成的。例如,"aaabbaaac"是由下面碎片组成的:'aaa','bb','c'。现在给定一个字符串,请你帮助计算这个字符串的所有碎片的平均长度是多少,结果直接取整,无需保留小数 输入例子1: "aaabbaaac" 输出例子1: 阅读全文
posted @ 2021-04-16 16:53 堤苏白 阅读(114) 评论(0) 推荐(0) 编辑
摘要:题目: 给定一个二叉搜索树, 找到该树中两个指定节点的最近公共祖先。 百度百科中最近公共祖先的定义为:“对于有根树 T 的两个结点 p、q,最近公共祖先表示为一个结点 x,满足 x 是 p、q 的祖先且 x 的深度尽可能大(一个节点也可以是它自己的祖先)。” 例如,给定如下二叉搜索树: root = 阅读全文
posted @ 2021-04-14 13:07 堤苏白 阅读(50) 评论(0) 推荐(0) 编辑
摘要:题目: 给定一个数组 A[0,1,…,n-1],请构建一个数组 B[0,1,…,n-1],其中 B[i] 的值是数组 A 中除了下标 i 以外的元素的积, 即 B[i]=A[0]×A[1]×…×A[i-1]×A[i+1]×…×A[n-1]。不能使用除法。 示例: 输入: [1,2,3,4,5] 输出 阅读全文
posted @ 2021-04-13 17:32 堤苏白 阅读(27) 评论(0) 推荐(0) 编辑
摘要:题目: 假设把某股票的价格按照时间先后顺序存储在数组中,请问买卖该股票一次可能获得的最大利润是多少? 示例 1: 输入: [7,1,5,3,6,4] 输出: 5 解释: 在第 2 天(股票价格 = 1)的时候买入,在第 5 天(股票价格 = 6)的时候卖出,最大利润 = 6-1 = 5 。 注意利润 阅读全文
posted @ 2021-04-13 16:57 堤苏白 阅读(43) 评论(0) 推荐(0) 编辑
摘要:题目: 0,1,···,n-1这n个数字排成一个圆圈,从数字0开始,每次从这个圆圈里删除第m个数字(删除后从下一个数字开始计数)。求出这个圆圈里剩下的最后一个数字。 例如,0、1、2、3、4这5个数字组成一个圆圈,从数字0开始每次删除第3个数字,则删除的前4个数字依次是2、0、4、1,因此最后剩下的 阅读全文
posted @ 2021-04-13 15:53 堤苏白 阅读(51) 评论(0) 推荐(0) 编辑
摘要:题目: 从扑克牌中随机抽5张牌,判断是不是一个顺子,即这5张牌是不是连续的。2~10为数字本身,A为1,J为11,Q为12,K为13,而大、小王为 0 ,可以看成任意数字。A 不能视为 14。 示例 1: 输入: [1,2,3,4,5] 输出: True 示例 2: 输入: [0,0,1,2,5] 阅读全文
posted @ 2021-04-13 12:52 堤苏白 阅读(67) 评论(0) 推荐(0) 编辑
摘要:题目: 请定义一个队列并实现函数 max_value 得到队列里的最大值,要求函数max_value、push_back 和 pop_front 的均摊时间复杂度都是O(1)。 若队列为空,pop_front 和 max_value 需要返回 -1 示例 1: 输入: ["MaxQueue","pu 阅读全文
posted @ 2021-04-12 17:06 堤苏白 阅读(50) 评论(0) 推荐(0) 编辑
摘要:题目: 给定一个数组 nums 和滑动窗口的大小 k,请找出所有滑动窗口里的最大值。 示例: 输入: nums = [1,3,-1,-3,5,3,6,7], 和 k = 3 输出: [3,3,5,5,6,7] 解释: 滑动窗口的位置 最大值 [1 3 -1] -3 5 3 6 7 3 1 [3 -1 阅读全文
posted @ 2021-04-12 15:25 堤苏白 阅读(38) 评论(0) 推荐(0) 编辑
摘要:题目: 字符串的左旋转操作是把字符串前面的若干个字符转移到字符串的尾部。请定义一个函数实现字符串左旋转操作的功能。比如,输入字符串"abcdefg"和数字2,该函数将返回左旋转两位得到的结果"cdefgab"。 示例 1: 输入: s = "abcdefg", k = 2 输出: "cdefgab" 阅读全文
posted @ 2021-04-11 15:20 堤苏白 阅读(44) 评论(0) 推荐(0) 编辑
摘要:题目: 输入一个正整数 target ,输出所有和为 target 的连续正整数序列(至少含有两个数)。 序列内的数字由小到大排列,不同序列按照首个数字从小到大排列。 示例 1: 输入:target = 9 输出:[[2,3,4],[4,5]] 示例 2: 输入:target = 15 输出:[[1 阅读全文
posted @ 2021-04-11 14:31 堤苏白 阅读(37) 评论(0) 推荐(0) 编辑
摘要:题目: 输入一个递增排序的数组和一个数字s,在数组中查找两个数,使得它们的和正好是s。如果有多对数字的和等于s,则输出任意一对即可。 示例 1: 输入:nums = [2,7,11,15], target = 9 输出:[2,7] 或者 [7,2] 示例 2: 输入:nums = [10,26,30 阅读全文
posted @ 2021-04-10 21:12 堤苏白 阅读(40) 评论(0) 推荐(0) 编辑
摘要:题目: 输入一棵二叉树的根节点,判断该树是不是平衡二叉树。如果某二叉树中任意节点的左右子树的深度相差不超过1,那么它就是一棵平衡二叉树。 示例 1: 给定二叉树 [3,9,20,null,null,15,7] 3 / \ 9 20 / \ 15 7 返回 true 。示例 2: 给定二叉树 [1,2 阅读全文
posted @ 2021-04-10 20:29 堤苏白 阅读(34) 评论(0) 推荐(0) 编辑
摘要:题目: 输入一棵二叉树的根节点,求该树的深度。从根节点到叶节点依次经过的节点(含根、叶节点)形成树的一条路径,最长路径的长度为树的深度。 例如: 给定二叉树 [3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7 返回它的最大深度 3 。 提示: 节点总数 <= 1 阅读全文
posted @ 2021-04-10 20:14 堤苏白 阅读(16) 评论(0) 推荐(0) 编辑
摘要:题目: 给定一棵二叉搜索树,请找出其中第k大的节点。 示例 1: 输入: root = [3,1,4,null,2], k = 1 3 / \ 1 4 \ 2 输出: 4 示例 2: 输入: root = [5,3,6,2,4,null,null,1], k = 3 5 / \ 3 6 / \ 2 阅读全文
posted @ 2021-04-10 20:04 堤苏白 阅读(47) 评论(0) 推荐(0) 编辑
摘要:题目: 一个长度为n-1的递增排序数组中的所有数字都是唯一的,并且每个数字都在范围0~n-1之内。在范围0~n-1内的n个数字中有且只有一个数字不在该数组中,请找出这个数字。 示例 1: 输入: [0,1,3] 输出: 2 示例 2: 输入: [0,1,2,3,4,5,6,7,9] 输出: 8 限制 阅读全文
posted @ 2021-04-10 19:36 堤苏白 阅读(48) 评论(0) 推荐(0) 编辑
摘要:题目: 输入两个链表,找出它们的第一个公共节点。 如下面的两个链表: 在节点 c1 开始相交。 示例 1: 输入:intersectVal = 8, listA = [4,1,8,4,5], listB = [5,0,1,8,4,5], skipA = 2, skipB = 3 输出:Referen 阅读全文
posted @ 2021-04-10 14:28 堤苏白 阅读(50) 评论(0) 推荐(0) 编辑
摘要:题目: 在字符串 s 中找出第一个只出现一次的字符。如果没有,返回一个单空格。 s 只包含小写字母。 示例: s = "abaccdeff" 返回 "b" s = "" 返回 " " 限制: 0 <= s 的长度 <= 50000 代码: //思路:第一个唯一字符,必然是从前往后和从后往前找首次出现 阅读全文
posted @ 2021-04-09 19:20 堤苏白 阅读(39) 评论(0) 推荐(0) 编辑
摘要:题目:查找二叉搜索树的叶子节点 给一个二叉查找树(Binary Search Tree)的前序遍历结果数组,打印出所有的叶子节点。 输入描述: 输入为二叉查找树的前序遍历结果数组,元素之间用空格分隔: 9 8 7 10 输出描述: 所有的叶子节点元素,用空格分隔 解释:因为二叉搜索树的表示为: 9 阅读全文
posted @ 2021-04-09 16:21 堤苏白 阅读(168) 评论(0) 推荐(0) 编辑
摘要:题目:字符串算术运算 描述:定一个字符串式子,返回它的计算结果。算术规则为: k*[encoded_string],表示其中方括号内部的 encoded_string 正好重复 k 次。注意 k 保证为正整数。e.g. s = "3*[a2*[c]]", 返回 “accaccacc” 输入例子1: 阅读全文
posted @ 2021-04-09 16:18 堤苏白 阅读(158) 评论(0) 推荐(0) 编辑
摘要:题目: 罗马数字转整数 罗马数字包含以下七种字符: I, V, X, L,C,D 和 M。字符 数值I 1V 5X 10L 50C 100D 500M 1000例如, 罗马数字 2 写做 II ,即为两个并列的 1。12 写做 XII ,即为 X + II 。 27 写做 XXVII, 即为 XX 阅读全文
posted @ 2021-04-09 15:10 堤苏白 阅读(95) 评论(0) 推荐(0) 编辑
摘要:题目: 请从字符串中找出一个最长的不包含重复字符的子字符串,计算该最长子字符串的长度。 示例 1: 输入: "abcabcbb" 输出: 3 解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。 示例 2: 输入: "bbbbb" 输出: 1 解释: 因为无重复字符的最长子串是 "b" 阅读全文
posted @ 2021-04-08 17:24 堤苏白 阅读(56) 评论(0) 推荐(0) 编辑
摘要:题目: 在一个 m*n 的棋盘的每一格都放有一个礼物,每个礼物都有一定的价值(价值大于 0)。你可以从棋盘的左上角开始拿格子里的礼物,并每次向右或者向下移动一格、直到到达棋盘的右下角。给定一个棋盘及其上面的礼物的价值,请计算你最多能拿到多少价值的礼物? 示例 1: 输入: [ [1,3,1], [1 阅读全文
posted @ 2021-04-08 16:51 堤苏白 阅读(38) 评论(0) 推荐(0) 编辑
摘要:题目: 给定一个数字,我们按照如下规则把它翻译为字符串:0 翻译成 “a” ,1 翻译成 “b”,……,11 翻译成 “l”,……,25 翻译成 “z”。一个数字可能有多个翻译。请编程实现一个函数,用来计算一个数字有多少种不同的翻译方法。 示例 1: 输入: 12258 输出: 5 解释: 1225 阅读全文
posted @ 2021-04-08 16:27 堤苏白 阅读(44) 评论(0) 推荐(0) 编辑
摘要:题目: 小Q在周末的时候和他的小伙伴来到大城市逛街,一条步行街上有很多高楼,共有n座高楼排成一行。 小Q从第一栋一直走到了最后一栋,小Q从来都没有见到这么多的楼, 所以他想知道他在每栋楼的位置处能看到多少栋楼呢?(当前面的楼的高度大于等于后面的楼时,后面的楼将被挡住) 输入例子1: [5,3,8,3 阅读全文
posted @ 2021-04-08 13:20 堤苏白 阅读(181) 评论(0) 推荐(0) 编辑
摘要:题目: 小Q想要给他的朋友发送一个神秘字符串,但是他发现字符串的过于长了,于是小Q发明了一种压缩算法对字符串中重复的部分进行了压缩,对于字符串中连续的m个相同字符串S将会压缩为[m|S](m为一个整数且1<=m<=100),例如字符串ABCABCABC将会被压缩为[3|ABC],现在小Q的同学收到了 阅读全文
posted @ 2021-04-08 12:39 堤苏白 阅读(122) 评论(0) 推荐(0) 编辑
摘要:题目: 第一行输入N, 0<N<=100000 第一行输入N,0<N<=100000接下来是N行代表每个小朋友希望和谁分到一组,如"John Jack", 代表 接下来是N行代表每个小朋友希望和谁分到一组,如“John Jack”,代表John希望和Jack分到-组,两个名字之间以空格分割,名字本身 阅读全文
posted @ 2021-04-07 22:58 堤苏白 阅读(191) 评论(0) 推荐(0) 编辑
摘要:题目: 输入一个非负整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。 示例 1: 输入: [10,2] 输出: "102" 示例 2: 输入: [3,30,34,5,9] 输出: "3033459" 提示: 0 < nums.length <= 100 说明: 代码 阅读全文
posted @ 2021-04-07 15:25 堤苏白 阅读(51) 评论(0) 推荐(0) 编辑
摘要:题目: 输入一个整型数组,数组中的一个或连续多个整数组成一个子数组。求所有子数组的和的最大值。 要求时间复杂度为O(n)。 示例1: 输入: nums = [-2,1,-3,4,-1,2,1,-5,4] 输出: 6 解释: 连续子数组 [4,-1,2,1] 的和最大,为 6。 提示: 1 <= ar 阅读全文
posted @ 2021-04-07 12:59 堤苏白 阅读(27) 评论(0) 推荐(0) 编辑
摘要:题目: 如何得到一个数据流中的中位数?如果从数据流中读出奇数个数值,那么中位数就是所有数值排序之后位于中间的数值。如果从数据流中读出偶数个数值,那么中位数就是所有数值排序之后中间两个数的平均值。 例如, [2,3,4] 的中位数是 3 [2,3] 的中位数是 (2 + 3) / 2 = 2.5 设计 阅读全文
posted @ 2021-04-07 12:56 堤苏白 阅读(45) 评论(0) 推荐(0) 编辑
摘要:题目: 输入整数数组 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 = 阅读全文
posted @ 2021-04-06 21:24 堤苏白 阅读(27) 评论(0) 推荐(0) 编辑
摘要:题目: 数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。 你可以假设数组是非空的,并且给定的数组总是存在多数元素。 示例 1: 输入: [1, 2, 3, 2, 2, 2, 5, 4, 2] 输出: 2 限制: 1 <= 数组长度 <= 50000 代码: //摩尔投票法 ,只要和基数 阅读全文
posted @ 2021-04-06 20:16 堤苏白 阅读(45) 评论(0) 推荐(0) 编辑
摘要:题目: 输入一个字符串,打印出该字符串中字符的所有排列。 你可以以任意顺序返回这个字符串数组,但里面不能有重复元素。 示例: 输入:s = "abc" 输出:["abc","acb","bac","bca","cab","cba"] 限制: 1 <= s 的长度 <= 8 代码: 1.list存放每 阅读全文
posted @ 2021-04-06 19:16 堤苏白 阅读(43) 评论(0) 推荐(0) 编辑
摘要:题目: 输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的循环双向链表。要求不能创建任何新的节点,只能调整树中节点指针的指向。 为了让您更好地理解问题,以下面的二叉搜索树为例: 我们希望将这个二叉搜索树转化为双向循环链表。链表中的每个节点都有一个前驱和后继指针。对于双向循环链表,第一个节点的前驱是最 阅读全文
posted @ 2021-04-05 19:52 堤苏白 阅读(40) 评论(0) 推荐(0) 编辑
摘要:题目: 请实现 copyRandomList 函数,复制一个复杂链表。在复杂链表中,每个节点除了有一个 next 指针指向下一个节点,还有一个 random 指针指向链表中的任意节点或者 null。 示例 1: 输入:head = [[7,null],[13,0],[11,4],[10,2],[1, 阅读全文
posted @ 2021-04-05 18:55 堤苏白 阅读(52) 评论(0) 推荐(0) 编辑
摘要:题目: 输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历结果。如果是则返回 true,否则返回 false。假设输入的数组的任意两个数字都互不相同。 参考以下这颗二叉搜索树: 5 / \ 2 6 / \ 1 3 示例 1: 输入: [1,6,3,2,5] 输出: false 示例 2: 输入 阅读全文
posted @ 2021-04-03 17:30 堤苏白 阅读(46) 评论(0) 推荐(0) 编辑
摘要:题目: 请实现一个函数按照之字形顺序打印二叉树,即第一行按照从左到右的顺序打印,第二层按照从右到左的顺序打印,第三行再按照从左到右的顺序打印,其他行以此类推。 例如:给定二叉树: [3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7 返回其层次遍历结果: [ [3 阅读全文
posted @ 2021-04-03 16:52 堤苏白 阅读(32) 评论(0) 推荐(0) 编辑
摘要:题目: 小美请小团吃回转寿司。转盘上有N盘寿司围成一圈,第1盘与第2盘相邻,第2盘与第3盘相邻,…,第N-1盘与第N盘相邻,第N盘与第1盘相邻。小团认为第i盘寿司的美味值为A[i](可能是负值,如果小团讨厌这盘寿司)。现在,小团要在转盘上选出连续的若干盘寿司,使得这些寿司的美味值之和最大(允许不选任 阅读全文
posted @ 2021-04-03 16:25 堤苏白 阅读(326) 评论(0) 推荐(0) 编辑
摘要:题目: 小团是某综艺节目的策划,他为某个游戏环节设计了一种晋级规则,已知在这个游戏环节中每个人最后都会得到一个分数score_i,显而易见的是,游戏很有可能出现同分的情况,小团计划该环节晋级人数为x人,则将所有人的分数从高到低排序,所有分数大于等于第x个人的分数且得分不为0的人都可以晋级。 请你求出 阅读全文
posted @ 2021-04-03 15:13 堤苏白 阅读(281) 评论(0) 推荐(0) 编辑
摘要:题目: 小团的蛋糕铺长期霸占着美团APP中“蛋糕奶茶”栏目的首位,因此总会吸引各路食客前来探店。 小团一天最多可以烤n个蛋糕,每个蛋糕有一个正整数的重量。 早上,糕点铺已经做好了m个蛋糕。 现在,有一个顾客要来买两个蛋糕,他希望买这一天糕点铺烤好的最重的和最轻的蛋糕,并且希望这两个蛋糕的重量恰好为a 阅读全文
posted @ 2021-04-03 15:12 堤苏白 阅读(274) 评论(0) 推荐(0) 编辑
摘要:题目: 从上到下按层打印二叉树,同一层的节点按从左到右的顺序打印,每一层打印到一行。 例如:给定二叉树: [3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7 返回其层次遍历结果: [ [3], [9,20], [15,7] ] 提示: 节点总数 <= 1000 阅读全文
posted @ 2021-04-01 10:52 堤苏白 阅读(54) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示