个人力扣刷题笔记
记录个人刷题的过程,方便以后查看与复习
双非渣渣的自赎之路
努力努力
展开
-
字符串:859.亲密字符串
题目:给定两个由小写字母构成的字符串A和B,只要我们可以通过交换 A 中的两个字母得到与 B 相等的结果,就返回true;否则返回 false 。交换字母的定义是取两个下标 i 和 j (下标从 0 开始),只要 i!=j 就交换 A[i] 和 A[j] 处的字符。例如,在 "abcd" 中交换下标 0 和下标 2 的元素可以生成 "cbad" 。示例 1:输入: A = "ab", B = "ba"输出: true解释: 你可以交换 A[0] = 'a' 和 A[1] = ...原创 2021-09-24 15:01:25 · 86 阅读 · 0 评论 -
每日一题:326.3的幂
给定一个整数,写一个函数来判断它是否是 3的幂次方。如果是,返回 true ;否则,返回 false 。整数 n 是 3 的幂次方需满足:存在整数 x 使得 n ==示例 1:输入:n = 27输出:true示例 2:输入:n = 0输出:false示例 3:输入:n = 9输出:true示例 4:输入:n = 45输出:false思路:(第一版)扩大除数,如果n是3的幂,那n可以整除所有(<n),所以除数由3每次递乘3,直到等于n退出循环,返回true。..原创 2021-09-24 14:00:46 · 122 阅读 · 0 评论 -
字符串:819.最常见的单词
题目:给定一个段落 (paragraph) 和一个禁用单词列表 (banned)。返回出现次数最多,同时不在禁用列表中的单词。题目保证至少有一个词不在禁用列表中,而且答案唯一。禁用列表中的单词用小写字母表示,不含标点符号。段落中的单词不区分大小写。答案都是小写字母。示例:输入:paragraph = "Bob hit a ball, the hit BALL flew far after it was hit."banned = ["hit"]输出: "ball"解释:"h..原创 2021-09-22 19:26:35 · 129 阅读 · 0 评论 -
字符串:434.字符串中的单词数
题目:统计字符串中的单词个数,这里的单词指的是连续的不是空格的字符。请注意,你可以假定字符串里不包括任何不可打印的字符。示例:输入: "Hello, my name is John"输出: 5解释: 这里的单词是指连续的不是空格的字符,所以 "Hello," 算作 1 个单词。思路:题比较简单,只要不属于空格都属于单词的内容。设置一个标记pre=1表示已经进入单词了,然后遇见空格即单词数加1,同时标记pre清0。然后遇见第一个不为空格但标记pre=0,即近入一个新单词即设置pre=1原创 2021-09-22 16:31:34 · 165 阅读 · 0 评论 -
字符串:67.二进制求和
题目:给你两个二进制字符串,返回它们的和(用二进制表示)。输入为 非空 字符串且只包含数字1和0。示例1:输入: a = "11", b = "1"输出: "100"示例2:输入: a = "1010", b = "1011"输出: "10101"思路:刚开始想将字符串每个字符都转化为0或1,或设置一个字符串来存结果,但一想这有现成的为什么还要用额外的内存呢。于是就在较长的字符串上改,题目不难,只要把逻辑理清楚,仔细点就不会错。首先就是找到长的字符串,然后...原创 2021-09-21 22:16:32 · 203 阅读 · 0 评论 -
字符串:13.罗马数字转整数
题目:罗马数字包含以下七种字符: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+V+II...原创 2021-09-21 17:56:29 · 98 阅读 · 0 评论 -
每日一题:58.最后一个单词的长度
题目:给你一个字符串 s,由若干单词组成,单词前后用一些空格字符隔开。返回字符串中最后一个单词的长度。单词 是指仅由字母组成、不包含任何空格字符的最大子字符串。示例 1:输入:s = "Hello World"输出:5示例 2:输入:s = " fly me to the moon "输出:4示例 3:输入:s = "luffy is still joyboy"输出:6提示:1 <= s.length <= 104s 仅有英文字母和空格 ...原创 2021-09-21 14:13:24 · 106 阅读 · 0 评论 -
数组:1497.检查数组对是否可被k整除
题目:给你一个整数数组 arr 和一个整数 k ,其中数组长度是偶数,值为 n 。现在需要把数组恰好分成 n /2 对,以使每对数字的和都能够被 k 整除。如果存在这样的分法,请返回 True ;否则,返回 False 。示例 1:输入:arr = [1,2,3,4,5,10,6,7,8,9], k = 5输出:true解释:划分后的数字对为 (1,9),(2,8),(3,7),(4,6) 以及 (5,10) 。示例 2:输入:arr = [1,2,3,4,5,6], k =.原创 2021-09-19 17:18:10 · 131 阅读 · 0 评论 -
每日一题:650.只有两个键的键盘
题目:最初记事本上只有一个字符 'A' 。你每次可以对这个记事本进行两种操作:Copy All(复制全部):复制这个记事本中的所有字符(不允许仅复制部分字符)。Paste(粘贴):粘贴 上一次 复制的字符。给你一个数字n ,你需要使用最少的操作次数,在记事本上输出 恰好n个 'A' 。返回能够打印出n个 'A' 的最少操作次数。示例 1:输入:3输出:3解释:最初, 只有一个字符 'A'。第 1 步, 使用 Copy All 操作。第 2 步, 使用 Paste 操作...原创 2021-09-19 14:36:41 · 157 阅读 · 0 评论 -
数组:11.盛最多水的容器
题目:给你 n 个非负整数 a1,a2,...,an,每个数代表坐标中的一个点(i,ai) 。在坐标内画 n 条垂直线,垂直线 i的两个端点分别为(i,ai) 和 (i, 0) 。找出其中的两条线,使得它们与x轴共同构成的容器可以容纳最多的水。说明:你不能倾斜容器。输入:[1,8,6,2,5,4,8,3,7]输出:49解释:图中垂直线代表输入数组 [1,8,6,2,5,4,8,3,7]。在此情况下,容器能够容纳水(表示为蓝色部分)的最大值为49。示例 2:输入:h...原创 2021-09-18 22:02:04 · 99 阅读 · 0 评论 -
每日一题:292.Nim游戏
题目:你和你的朋友,两个人一起玩Nim 游戏:桌子上有一堆石头。你们轮流进行自己的回合,你作为先手。每一回合,轮到的人拿掉1 - 3 块石头。拿掉最后一块石头的人就是获胜者。假设你们每一步都是最优解。请编写一个函数,来判断你是否可以在给定石头数量为 n 的情况下赢得游戏。如果可以赢,返回 true;否则,返回 false 。示例 1:输入:n = 4输出:false解释:如果堆中有 4 块石头,那么你永远不会赢得比赛; 因为无论你拿走 1 块、2 块 还是 3 块...原创 2021-09-18 18:18:41 · 1005 阅读 · 0 评论 -
每日一题:162.寻找峰值
题目:峰值元素是指其值严格大于左右相邻值的元素。给你一个整数数组nums,找到峰值元素并返回其索引。数组可能包含多个峰值,在这种情况下,返回 任何一个峰值 所在位置即可。你可以假设nums[-1] = nums[n] = -∞ 。你必须实现时间复杂度为 O(log n) 的算法来解决此问题。示例 1:输入:nums = [1,2,3,1]输出:2解释:3 是峰值元素,你的函数应该返回其索引 2。示例2:输入:nums = [1,2,1,3,5,6,4]输出:1 或 ...原创 2021-09-16 10:15:07 · 149 阅读 · 0 评论 -
数组:1128.等价多米诺骨牌对的数量
题目:给你一个由一些多米诺骨牌组成的列表dominoes。如果其中某一张多米诺骨牌可以通过旋转 0度或 180 度得到另一张多米诺骨牌,我们就认为这两张牌是等价的。形式上,dominoes[i] = [a, b]和dominoes[j] = [c, d]等价的前提是a==c且b==d,或是a==d 且b==c。在0 <= i < j < dominoes.length的前提下,找出满足dominoes[i] 和dominoes[j]等价的骨牌对...原创 2021-09-15 19:31:26 · 114 阅读 · 0 评论 -
每日一题:447.回旋镖的数量
题目:给定平面上n 对 互不相同 的点points ,其中 points[i] = [xi, yi] 。回旋镖 是由点(i, j, k) 表示的元组 ,其中i和j之间的距离和i和k之间的距离相等(需要考虑元组的顺序)。返回平面上所有回旋镖的数量。示例 1:输入:points = [[0,0],[1,0],[2,0]]输出:2解释:两个回旋镖为 [[1,0],[0,0],[2,0]] 和 [[1,0],[2,0],[0,0]]示例 2:输入:points = [[...原创 2021-09-14 14:40:13 · 141 阅读 · 0 评论 -
数组:1089.复写零
题目:给你一个长度固定的整数数组arr,请你将该数组中出现的每个零都复写一遍,并将其余的元素向右平移。注意:请不要在超过该数组长度的位置写入元素。要求:请对输入的数组就地进行上述修改,不要从函数返回任何东西。示例 1:输入:[1,0,2,3,0,4,5,0]输出:null解释:调用函数后,输入的数组将被修改为:[1,0,0,2,3,0,0,4]示例 2:输入:[1,2,3]输出:null解释:调用函数后,输入的数组将被修改为:[1,2,3]思路:借助栈,将arr数...原创 2021-09-13 21:37:48 · 144 阅读 · 0 评论 -
数组:989.数字形式的整数加法
题目:对于非负整数X而言,X的数组形式是每位数字按从左到右的顺序形成的数组。例如,如果X = 1231,那么其数组形式为[1,2,3,1]。给定非负整数 X 的数组形式A,返回整数X+K的数组形式。示例 1:输入:A = [1,2,0,0], K = 34输出:[1,2,3,4]解释:1200 + 34 = 1234示例 2:输入:A = [2,7,4], K = 181输出:[4,5,5]解释:274 + 181 = 455示例 3:输入:A = [2,...原创 2021-09-12 20:02:21 · 118 阅读 · 0 评论 -
数组:941.有效的山脉数组
题目:给定一个整数数组 arr,如果它是有效的山脉数组就返回true,否则返回 false。让我们回顾一下,如果 A 满足下述条件,那么它是一个山脉数组:arr.length >= 3在0 < i< arr.length - 1条件下,存在i使得: arr[0] < arr[1] < ... arr[i-1] < arr[i] arr[i] > arr[i+1] >...原创 2021-09-12 13:37:27 · 75 阅读 · 0 评论 -
每日一题:600.不含连续1的非负整数
题目:给定一个正整数 n,找出小于或等于 n 的非负整数中,其二进制表示不包含连续的1的个数。示例 1:输入: 5输出: 5解释:下面是带有相应二进制表示的非负整数<= 5:0 : 01 : 12 : 103 : 114 : 1005 : 101其中,只有整数3违反规则(有两个连续的1),其他5个满足规则。说明: 1 <= n <= 10^9思路:(动态规划)设一个数组:用f(i)表示为长度为i不含连续1的二进制数(范围i个0~~i个1)的个...转载 2021-09-12 13:22:35 · 276 阅读 · 0 评论 -
每日一题:1894.找到需要补充粉笔的学生编号
题目:一个班级里有n个学生,编号为 0到 n - 1。每个学生会依次回答问题,编号为 0的学生先回答,然后是编号为 1的学生,以此类推,直到编号为 n - 1的学生,然后老师会重复这个过程,重新从编号为 0的学生开始回答问题。给你一个长度为 n且下标从 0开始的整数数组chalk和一个整数k。一开始粉笔盒里总共有k支粉笔。当编号为i的学生回答问题时,他会消耗 chalk[i]支粉笔。如果剩余粉笔数量 严格小于chalk[i],那么学生 i需要 补充粉笔。...原创 2021-09-10 22:18:02 · 129 阅读 · 0 评论 -
数组:914.卡牌分组
题目:给定一副牌,每张牌上都写着一个整数。此时,你需要选定一个数字 X,使我们可以将整副牌按下述规则分成 1 组或更多组:每组都有X张牌。组内所有的牌上都写着相同的整数。仅当你可选的 X >= 2 时返回true。示例 1:输入:[1,2,3,4,4,3,2,1]输出:true解释:可行的分组是 [1,1],[2,2],[3,3],[4,4]示例 2:输入:[1,1,1,2,2,2,3,3]输出:false解释:没有满足要求的分组。示例 3:输入:[1...原创 2021-09-10 19:39:30 · 89 阅读 · 0 评论 -
c++:转换函数
1.标准数据之间会进行隐式类型安全转换,规则如下:在这里主要探讨c++中类类型与普通类型的转换:1.类类型转换普通类型class Fraction{public: Fraction(int num,int den=1); ~Fraction(); //转换函数 /* 转换函数语法规则: operator Type() { Type ret ; ........ return ret; }.原创 2021-09-09 20:10:55 · 317 阅读 · 0 评论 -
数组:888.公平的糖果交换
题目:爱丽丝和鲍勃有不同大小的糖果棒:A[i] 是爱丽丝拥有的第 i 根糖果棒的大小,B[j] 是鲍勃拥有的第 j 根糖果棒的大小。因为他们是朋友,所以他们想交换一根糖果棒,这样交换后,他们都有相同的糖果总量。(一个人拥有的糖果总量是他们拥有的糖果棒大小的总和。)返回一个整数数组 ans,其中 ans[0] 是爱丽丝必须交换的糖果棒的大小,ans[1]是 Bob 必须交换的糖果棒的大小。如果有多个答案,你可以返回其中任何一个。保证答案存在。示例 1:输入:A = [1,1], B .原创 2021-09-09 14:49:19 · 52 阅读 · 0 评论 -
数组:849.到最近的人的最大距离
题目:给你一个数组seats 表示一排座位,其中 seats[i] = 1 代表有人坐在第 i 个座位上,seats[i] = 0 代表座位 i 上是空的(下标从 0 开始)。至少有一个空座位,且至少有一人已经坐在座位上。亚历克斯希望坐在一个能够使他与离他最近的人之间的距离达到最大化的座位上。返回他到离他最近的人的最大距离。示例 1:输入:seats = [1,0,0,0,1,0,1]输出:2解释:如果亚历克斯坐在第二个空位(seats[2])上,他到离他最近的人的距离为 2 .原创 2021-09-08 15:35:48 · 77 阅读 · 0 评论 -
数组:840.矩阵的幻方
题目:3 x 3 的幻方是一个填充有从 1 到 9 的不同数字的 3 x 3 矩阵,其中每行,每列以及两条对角线上的各数之和都相等。给定一个由整数组成的 grid,其中有多少个 3 × 3 的 “幻方” 子矩阵?(每个子矩阵都是连续的)示例:输入: [[4,3,8,4], [9,5,1,9], [2,7,6,2]]输出: 1解释:下面的子矩阵是一个 3 x 3 的幻方:438951276而这一个不是:384519762总的来说,在本示例所给...原创 2021-09-07 21:53:17 · 192 阅读 · 0 评论 -
每日一题:1221.分割平衡字符串
题目:在一个 平衡字符串 中,'L' 和 'R' 字符的数量是相同的。给你一个平衡字符串s,请你将它分割成尽可能多的平衡字符串。注意:分割得到的每个字符串都必须是平衡字符串。返回可以通过分割得到的平衡字符串的 最大数量 。示例 1:输入:s = "RLRRLLRLRL"输出:4解释:s 可以分割为 "RL"、"RRLL"、"RL"、"RL" ,每个子字符串中都包含相同数量的 'L' 和 'R' 。示例 2:输入:s = "RLLLLRRRLR"输出:3解释:s 可以分.原创 2021-09-07 14:25:07 · 127 阅读 · 0 评论 -
数组:830.较大分组位置
题目:在一个由小写字母构成的字符串 s 中,包含由一些连续的相同字符所构成的分组。例如,在字符串 s = "abbxxxxzyy"中,就含有 "a", "bb", "xxxx", "z" 和 "yy" 这样的一些分组。分组可以用区间 [start, end] 表示,其中 start 和 end 分别表示该分组的起始和终止位置的下标。上例中的 "xxxx" 分组用区间表示为 [3,6] 。我们称所有包含大于或等于三个连续字符的分组为 较大分组 。找到每一个 较大分组 的区间,按起始位置下.原创 2021-09-06 21:25:36 · 121 阅读 · 0 评论 -
数组:747.至少是其他数字两倍的最大数
给你一个整数数组 nums ,其中总是存在 唯一的 一个最大整数 。请你找出数组中的最大元素并检查它是否 至少是数组中每个其他数字的两倍 。如果是,则返回 最大元素的下标 ,否则返回 -1 。示例 1:输入:nums = [3,6,1,0]输出:1解释:6 是最大的整数,对于数组中的其他整数,6 大于数组中其他元素的两倍。6 的下标是 1 ,所以返回 1 。示例 2:输入:nums = [1,2,3,4]输出:-1解释:4 没有超过 3 的两倍大,所以返回 -1 。示例 3:原创 2021-09-06 13:42:47 · 113 阅读 · 0 评论 -
每日一题:704.二分查找
题目:给定一个n个元素有序的(升序)整型数组nums 和一个目标值target ,写一个函数搜索nums中的 target,如果目标值存在返回下标,否则返回 -1。示例 1:输入: nums = [-1,0,3,5,9,12], target = 9输出: 4解释: 9 出现在 nums 中并且下标为 4示例2:输入: nums = [-1,0,3,5,9,12], target = 2输出: -1解释: 2 不存在 nums 中因此返回 -1(这题感觉是编程...原创 2021-09-06 13:07:58 · 108 阅读 · 0 评论 -
数组:724.寻找数组的中心下标
题目:给你一个整数数组nums ,请计算数组的 中心下标 。数组 中心下标 是数组的一个下标,其左侧所有元素相加的和等于右侧所有元素相加的和。如果中心下标位于数组最左端,那么左侧数之和视为 0 ,因为在下标的左侧不存在元素。这一点对于中心下标位于数组最右端同样适用。如果数组有多个中心下标,应该返回 最靠近左边 的那一个。如果数组不存在中心下标,返回 -1 。示例 1:输入:nums = [1, 7, 3, 6, 5, 6]输出:3解释:中心下标是 3 。左侧数之和 sum .原创 2021-09-05 21:08:42 · 188 阅读 · 0 评论 -
每日一题:470.用Rand7()实现Rand10()
已有方法rand7可生成 1 到 7 范围内的均匀随机整数,试写一个方法rand10生成 1 到 10 范围内的均匀随机整数。不要使用系统的Math.random()方法。示例 1:输入: 1输出: [7]示例 2:输入: 2输出: [8,4]示例 3:输入: 3输出: [8,1,10]提示:rand7已定义。传入参数:n表示rand10的调用次数。思路:(这题刚一看什么鬼,再一看有点思路,再深入要每个数出现概率相同,又不会了,最后看了评论...原创 2021-09-05 15:20:17 · 133 阅读 · 0 评论 -
数组:717.1比特与2比特
(写题解只是为了以后方便复习,记录自己的不足)题目:有两种特殊字符。第一种字符可以用一比特0来表示。第二种字符可以用两比特(10或11)来表示。现给一个由若干比特组成的字符串。问最后一个字符是否必定为一个一比特字符。给定的字符串总是由0结束。示例1:输入:bits = [1, 0, 0]输出: True解释:唯一的编码方式是一个两比特字符和一个一比特字符。所以最后一个字符是一比特字符。示例2:输入:bits = [1, 1, 1, 0]输出: False...原创 2021-09-04 21:07:11 · 81 阅读 · 0 评论 -
数组:697.数组的度
(写题解只是为了自己以后复习,无其他想法)题目:给定一个非空且只包含非负数的整数数组nums,数组的度的定义是指数组里任一元素出现频数的最大值。你的任务是在 nums 中找到与nums拥有相同大小的度的最短连续子数组,返回其长度。示例 1:输入:[1, 2, 2, 3, 1]输出:2解释:输入数组的度是2,因为元素1和2的出现频数最大,均为2.连续子数组里面拥有相同度的有如下所示:[1, 2, 2, 3, 1], [1, 2, 2, 3], [2, 2, 3, 1], [...原创 2021-09-03 21:34:03 · 75 阅读 · 0 评论 -
数组:674.最长连续递增序列
题目:给定一个未经排序的整数数组,找到最长且 连续递增的子序列,并返回该序列的长度。连续递增的子序列 可以由两个下标 l 和 r(l < r)确定,如果对于每个 l <= i < r,都有 nums[i] < nums[i + 1] ,那么子序列 [nums[l], nums[l + 1], ..., nums[r - 1], nums[r]] 就是连续递增子序列。示例 1:输入:nums = [1,3,5,4,7]输出:3解释:最长连续递增序列是 [1,3,5]原创 2021-09-02 20:28:13 · 164 阅读 · 0 评论 -
数组:665.非递减数列
题目描述:给你一个长度为n的整数数组,请你判断在 最多 改变1 个元素的情况下,该数组能否变成一个非递减数列。我们是这样定义一个非递减数列的:对于数组中任意的i (0 <= i <= n-2),总满足 nums[i] <= nums[i + 1]。示例 1:输入: nums = [4,2,3]输出: true解释: 你可以通过把第一个4变成1来使得它成为一个非递减数列。示例 2:输入: nums = [4,2,1]输出: false解释: 你不能在只...原创 2021-09-01 21:38:12 · 157 阅读 · 0 评论 -
数组:643.子数组最大平均数I
题目描述:给定n个整数,找出平均数最大且长度为k的连续子数组,并输出该最大平均数。示例:输入:[1,12,-5,-6,50,3], k = 4输出:12.75解释:最大平均数 (12-5-6+50)/4 = 51/4 = 12.75思路:常规思路的话是能解绝问题,但面临的是时间超时的问题所以本题采用的是滑动窗口解决。因为k值给定,所以求子数组平均数最大转而求子数组各元素和的问题。窗口有k个元素,用sum表示当前窗口各个元素之和,初始化为最前面K个元素之和,设置maxS...原创 2021-08-31 21:56:29 · 205 阅读 · 0 评论 -
数组:628。三个数的最大乘积
题目:给你一个整型数组nums,在数组中找出由三个数组成的最大乘积,并输出这个乘积。示例 1:输入:nums = [1,2,3]输出:6示例 2:输入:nums = [1,2,3,4]输出:24示例 3:输入:nums = [-1,-2,-3]输出:-6思路:1》数组全是负数或全是正数,都为最大的三个数乘积 2》剩下就是有正数有负数,结果可能为三个正数的乘积,也可能为两个最小负数和最大正数的乘积。第一次写时把情况分的很细,代码如下:class...原创 2021-08-30 21:46:15 · 157 阅读 · 0 评论 -
数组:605.种花问题
题目描述:假设有一个很长的花坛,一部分地块种植了花,另一部分却没有。可是,花不能种植在相邻的地块上,它们会争夺水源,两者都会死去。给你一个整数数组flowerbed 表示花坛,由若干 0 和 1 组成,其中 0 表示没种植花,1 表示种植了花。另有一个数n ,能否在不打破种植规则的情况下种入n朵花?能则返回 true ,不能则返回 false。示例 1:输入:flowerbed = [1,0,0,0,1], n = 1输出:true示例 2:输入:flowerbed = [...原创 2021-08-29 21:18:18 · 134 阅读 · 0 评论 -
数组:581.最短无序连续子数组
题目:给你一个整数数组 nums ,你需要找出一个 连续子数组 ,如果对这个子数组进行升序排序,那么整个数组都会变为升序排序。请你找出符合题意的 最短 子数组,并输出它的长度。示例一:输入:nums = [2,6,4,8,10,9,15]输出:5解释:你只需要对 [6, 4, 8, 10, 9] 进行升序排序,那么整个表都会变为升序排序。示例二:输入:nums = [1,2,3,4]输出:0示例三输入:nums = [1]输出:0思路:总的来说是让我们怎么通过调整最少原创 2021-08-28 19:15:54 · 190 阅读 · 0 评论 -
数组:414.第三大数
题目描述:给你一个非空数组,返回此数组中第三大的数。如果不存在,则返回数组中最大的数。(时间复杂度为O(n))示例 1:输入:[3, 2, 1]输出:1解释:第三大的数是 1 。示例 2:输入:[1, 2]输出:2解释:第三大的数不存在, 所以返回最大的数 2 。示例 3:输入:[2, 2, 3, 1]输出:1解释:注意,要求返回第三大的数,是指在所有不同数字中排第三大的数。此例中存在两个值为 2 的数,它们都排第二。在所有不同数字中排第三大的数为 1 。方案一..原创 2021-08-27 15:31:01 · 135 阅读 · 0 评论 -
数组:剑指 offer 66.构建乘积数组
剑指 offer 66.构建乘积数组题目描述:给定一个数组A[0,1,…,n-1],请构建一个数组B[0,1,…,n-1],其中B中的元素B[i]=A[0]×A[1]×…×A[i-1]×A[i+1]×…×A[n-1]。不能使用除法。实例:输入: [1,2,3,4,5]输出: [120,60,40,30,24]这里用暴力解法时间会超时,这里借鉴一个大佬的绝妙解法:思想:用两趟遍历求得最终结果,第一趟遍历:正向遍历,输出数组的每个位置得到的结果是输入数组在对应位置之前的各...原创 2021-08-26 15:27:40 · 100 阅读 · 0 评论