3 就叫昵称吧

尚未进行身份认证

我确实很懒,什么都不想写

等级
TA的排名 1w+

Leetcode 1464.数组中两元素的最大乘积(Maximum Product of Two Elements in an Array)

Leetcode 1464.数组中两元素的最大乘积1 题目描述(Leetcode题目链接)  给你一个整数数组 nums,请你选择数组的两个不同下标 i 和 j,使 (nums[i]-1)*(nums[j]-1) 取得最大值。请你计算并返回该式的最大值。输入:nums = [3,4,5,2]输出:12 解释:如果选择下标 i=1 和 j=2(下标从 0 开始),则可以获得最大值,(nums[1]-1)*(nums[2]-1) = (4-1)*(5-1) = 3*4 = 12 输入:nums

2020-06-01 11:49:52

Leetcode 386.字典序排数(Lexicographical Numbers)

Leetcode 386.字典序排数1 题目描述(Leetcode题目链接)  给定一个整数 n, 返回从 1 到 n 的字典顺序。例如,给定 n =1 3,返回 [1,10,11,12,13,2,3,4,5,6,7,8,9] 。请尽可能的优化算法的时间复杂度和空间复杂度。 输入的数据 n 小于等于 5,000,000。2 题解  深度优先搜索就可以了。class Solution: def lexicalOrder(self, n: int) -> List[int]:

2020-06-01 11:09:56

Leetcode 1431.拥有最多糖果的孩子(Kids With the Greatest Number of Candies)

Leetcode 1431.拥有最多糖果的孩子1 题目描述(Leetcode题目链接)  给你一个数组 candies 和一个整数 extraCandies ,其中 candies[i] 代表第 i 个孩子拥有的糖果数目。对每一个孩子,检查是否存在一种方案,将额外的 extraCandies 个糖果分配给孩子们之后,此孩子有 最多 的糖果。注意,允许有多个孩子同时拥有 最多 的糖果数目。输入:candies = [2,3,5,1,3], extraCandies = 3输出:[true,true,

2020-06-01 10:37:57

Leetcode 1299.将每个元素替换为右侧最大元素(Replace Elements with Greatest Element on Right Side)

Leetcode 1299.将每个元素替换为右侧最大元素1 题目描述(Leetcode题目链接)  给你一个数组 arr ,请你将每个元素用它右边最大的元素替换,如果是最后一个元素,用 -1 替换。完成所有替换操作后,请你返回这个数组。输入:arr = [17,18,5,4,6,1]输出:[18,6,6,6,1,-1]提示:1 <= arr.length <= 10^41 <= arr[i] <= 10^52 题解  逆序遍历,记录最大值。class So

2020-05-31 14:48:50

Leetcode 224.基本计算器(Basic Calculator)

Leetcode 224.基本计算器1 题目描述(Leetcode题目链接)  实现一个基本的计算器来计算一个简单的字符串表达式的值。字符串表达式可以包含左括号 ( ,右括号 ),加号 + ,减号 -,非负整数和空格 。输入: "1 + 1"输出: 2输入: " 2-1 + 2 "输出: 3输入: "(1+(4+5+2)-3)+(6+8)"输出: 23说明:你可以假设所给定的表达式都是有效的。请不要使用内置的库函数 eval。2 题解  用栈,比较粗暴地求。clas

2020-05-31 14:32:20

Leetcode 441.排列硬币(Arranging Coins)

Leetcode 441.排列硬币1 题目描述(Leetcode题目链接)  你总共有 n 枚硬币,你需要将它们摆成一个阶梯形状,第 k 行就必须正好有 k 枚硬币。给定一个数字 n,找出可形成完整阶梯行的总行数。n 是一个非负整数,并且在32位有符号整型的范围内。n = 5硬币可排列成以下几行:¤¤ ¤¤ ¤因为第三行不完整,所以返回2.n = 8硬币可排列成以下几行:¤¤ ¤¤ ¤ ¤¤ ¤因为第四行不完整,所以返回3.2 题解  设xxx行,则x(x+

2020-05-31 13:27:13

Leetcode 面试题09.用两个栈实现队列

Leetcode 面试题09.用两个栈实现队列1 题目描述(Leetcode题目链接)  用两个栈实现一个队列。队列的声明如下,请实现它的两个函数 appendTail 和 deleteHead ,分别完成在队列尾部插入整数和在队列头部删除整数的功能。(若队列中没有元素,deleteHead 操作返回 -1 )输入:["CQueue","appendTail","deleteHead","deleteHead"][[],[3],[],[]]输出:[null,null,3,-1]输入:["C

2020-05-30 11:25:06

Leetcode 812.最大三角形面积(Largest Triangle Area)

Leetcode 812.最大三角形面积1 题目描述(Leetcode题目链接)  给定包含多个点的集合,从其中取三个点组成三角形,返回能组成的最大三角形的面积。示例:输入: points = [[0,0],[0,1],[1,0],[0,2],[2,0]]输出: 2解释: 这五个点如下图所示。组成的橙色三角形是最大的,面积为2。注意:3 <= points.length <= 50.不存在重复的点。-50 <= points[i][j] <= 50.结果

2020-05-29 13:30:46

Leetcode 205.同构字符串(Isomorphic Strings)

Leetcode 205.同构字符串1 题目描述(Leetcode题目链接)  给定两个字符串 s 和 t,判断它们是否是同构的。如果 s 中的字符可以被替换得到 t ,那么这两个字符串是同构的。所有出现的字符都必须用另一个字符替换,同时保留字符的顺序。两个字符不能映射到同一个字符上,但字符可以映射自己本身。输入: s = "egg", t = "add"输出: true输入: s = "foo", t = "bar"输出: false输入: s = "paper", t = "tit

2020-05-29 12:19:09

Leetcode 890.查找和替换模式(Find and Replace Pattern)

Leetcode 890.查找和替换模式1 题目描述(Leetcode题目链接)  你有一个单词列表 words 和一个模式 pattern,你想知道 words 中的哪些单词与模式匹配。如果存在字母的排列 p ,使得将模式中的每个字母 x 替换为 p(x) 之后,我们就得到了所需的单词,那么单词与模式是匹配的。(回想一下,字母的排列是从字母到字母的双射:每个字母映射到另一个字母,没有两个字母映射到同一个字母。)返回 words 中与给定模式匹配的单词列表。你可以按任何顺序返回答案。输入:w

2020-05-29 11:16:55

Leetcode 1221.分割平衡字符串(Split a String in Balanced Strings)

Leetcode 1221.分割平衡字符串1 题目描述(Leetcode题目链接)  在一个「平衡字符串」中,‘L’ 和 ‘R’ 字符的数量是相同的。给出一个平衡字符串 s,请你将它分割成尽可能多的平衡字符串。返回可以通过分割得到的平衡字符串的最大数量。输入:s = "RLRRLLRLRL"输出:4解释:s 可以分割为 "RL", "RRLL", "RL", "RL", 每个子字符串中都包含相同数量的 'L' 和 'R'。输入:s = "RLLLLRRRLR"输出:3解释:s 可以分割

2020-05-28 12:39:41

Leetcode 1266.访问所有点的最小时间(Minimum Time Visiting All Points)

Leetcode 1266.访问所有点的最小时间1 题目描述(Leetcode题目链接)  平面上有 n 个点,点的位置用整数坐标表示 points[i] = [xi, yi]。请你计算访问所有这些点需要的最小时间(以秒为单位)。你可以按照下面的规则在平面上移动:每一秒沿水平或者竖直方向移动一个单位长度,或者跨过对角线(可以看作在一秒内向水平和竖直方向各移动一个单位长度)。必须按照数组中出现的顺序来访问这些点。输入:points = [[1,1],[3,4],[-1,0]]输出:7解释

2020-05-28 12:18:12

Leetcode 面试题47.礼物的最大价值

Leetcode 面试题47.礼物的最大价值1 题目描述(Leetcode题目链接)  在一个 m*n 的棋盘的每一格都放有一个礼物,每个礼物都有一定的价值(价值大于 0)。你可以从棋盘的左上角开始拿格子里的礼物,并每次向右或者向下移动一格、直到到达棋盘的右下角。给定一个棋盘及其上面的礼物的价值,请计算你最多能拿到多少价值的礼物?输入: [ [1,3,1], [1,5,1], [4,2,1]]输出: 12解释: 路径 1→3→5→2→1 可以拿到最多价值的礼物提示:0 &l

2020-05-28 11:47:07

Leetcode 290.单词规律(Word Pattern)

Leetcode 290.单词规律1 题目描述(Leetcode题目链接)  给定一种规律 pattern 和一个字符串 str ,判断 str 是否遵循相同的规律。这里的 遵循 指完全匹配,例如, pattern 里的每个字母和字符串 str 中的每个非空单词之间存在着双向连接的对应规律。输入: pattern = "abba", str = "dog cat cat dog"输出: true输入:pattern = "abba", str = "dog cat cat fish"输出:

2020-05-27 13:59:04

Leetcode 1365.有多少小于当前数字的数字(How Many Numbers Are Smaller Than the Current Number)

Leetcode 1365.有多少小于当前数字的数字1 题目描述(Leetcode题目链接)  给你一个数组 nums,对于其中每个元素 nums[i],请你统计数组中比它小的所有数字的数目。换而言之,对于每个 nums[i] 你必须计算出有效的 j 的数量,其中 j 满足 j != i 且 nums[j] < nums[i] 。以数组形式返回答案。输入:nums = [8,1,2,2,3]输出:[4,0,1,1,3]解释: 对于 nums[0]=8 存在四个比它小的数字:(1,2,2

2020-05-27 13:31:02

Leetcode 189.旋转数组(Rotate Array)

Leetcode 189.旋转数组1 题目描述(Leetcode题目链接)  给定一个数组,将数组中的元素向右移动 k 个位置,其中 k 是非负数。输入: [1,2,3,4,5,6,7] 和 k = 3输出: [5,6,7,1,2,3,4]解释:向右旋转 1 步: [7,1,2,3,4,5,6]向右旋转 2 步: [6,7,1,2,3,4,5]向右旋转 3 步: [5,6,7,1,...

2020-05-27 12:43:05

Leetcode 974.和可被 K 整除的子数组(Subarray Sums Divisible by K)

Leetcode 974.和可被 K 整除的子数组1 题目描述(Leetcode题目链接)  给定一个整数数组 A,返回其中元素之和可被 K 整除的(连续、非空)子数组的数目。输入:A = [4,5,0,-2,-3,1], K = 5输出:7解释:有 7 个子数组满足其元素之和可被 K = 5 整除:[4, 5, 0, -2, -3, 1], [5], [5, 0], [5, 0, -2, -3], [0], [0, -2, -3], [-2, -3]提示:1 <= A.leng

2020-05-27 12:41:14

Leetcode 1331.数组序号转换(Rank Transform of an Array)

Leetcode 1331.数组序号转换1 题目描述(Leetcode题目链接)  给你一个整数数组 arr ,请你将数组中的每个元素替换为它们排序后的序号。序号代表了一个元素有多大。序号编号的规则如下:序号从 1 开始编号。一个元素越大,那么序号越大。如果两个元素相等,那么它们的序号相同。每个数字的序号都应该尽可能地小。输入:arr = [40,10,20,30]输出:[4,1,2,3]解释:40 是最大的元素。 10 是最小的元素。 20 是第二小的数字。 30 是第三小的数字。

2020-05-26 14:22:32

Leetcode 1339.分裂二叉树的最大乘积(Maximum Product of Splitted Binary Tree)

Leetcode 1339.分裂二叉树的最大乘积1 题目描述(Leetcode题目链接)  给你一棵二叉树,它的根为 root 。请你删除 1 条边,使二叉树分裂成两棵子树,且它们子树和的乘积尽可能大。由于答案可能会很大,请你将结果对 10^9 + 7 取模后再返回。输入:root = [1,2,3,4,5,6]输出:110解释:删除红色的边,得到 2 棵子树,和分别为 11 和 10 。它们的乘积是 110 (11*10)提示:每棵树最多有 50000 个节点,且至少有 2 个节点。

2020-05-26 13:47:24

Leetcode 1277.统计全为 1 的正方形子矩阵(Count Square Submatrices with All Ones)

Leetcode 1277.统计全为 1 的正方形子矩阵1 题目描述(Leetcode题目链接)  给你一个 m * n 的矩阵,矩阵中的元素不是 0 就是 1,请你统计并返回其中完全由 1 组成的 正方形 子矩阵的个数。输入:matrix =[ [0,1,1,1], [1,1,1,1], [0,1,1,1]]输出:15解释: 边长为 1 的正方形有 10 个。边长为 2 的正方形有 4 个。边长为 3 的正方形有 1 个。正方形的总数 = 10 + 4 + 1 = 15.

2020-05-26 12:52:50

查看更多

勋章 我的勋章
  • GitHub
    GitHub
    绑定GitHub第三方账户获取
  • 签到新秀
    签到新秀
    累计签到获取,不积跬步,无以至千里,继续坚持!
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv4
    勤写标兵Lv4
    授予每个自然周发布9篇以上(包括9篇)原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。