LeetCode题解
文章平均质量分 89
逗号三点一四
。。。。。。
展开
-
LeetCode 119. 杨辉三角 II
在「杨辉三角」 中,每个数是它左上方和右上方的数的和。,如果不在乎那么就要除掉重复,同样选出的来的。,利用该公式可以在线性时间内计算出第。元素按照一定的顺序排成一列,叫做从。个元素的所有排列的个数,叫做从。个元素的所有组合的个数,叫做从。个出来,不排队,不在乎顺序即为。个,第二个位置可选择人选有。个(最后一个)可选择人选有。个元素组成一个集合,叫做从。个人,他们还要全排列才能得。第一个位置可选择人选有。个元素的排列数,用符号。,返回「杨辉三角」的第。个不同的元素中,任取。原创 2023-02-10 20:39:51 · 104 阅读 · 0 评论 -
LeetCode 896. 单调数列
利用循环不断得到相邻两数的差值,然后判断单调性是否与整体数列相符,即可得到整个数列是否单调。当给定的数组 nums 是单调数组时返回 true,否则返回 false。可以先用末尾元素减去头元素,以此暂时判断出整个数列的单调性,单调递增为。,然后用该数乘以每一个相邻两数的差值,结果必然大于等于零。如果数组是单调递增或单调递减的,那么它是单调的。原创 2023-01-19 13:22:58 · 163 阅读 · 0 评论 -
LeetCode 剑指 Offer 64. 求1+2+…+n
B:C),还可以使用的只剩下位运算、逻辑运算符、加减法以及赋值。+n ,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?通常实现递归时,一般都会用条件判断语句来作为终止条件,而现在条件判断语句无法使用,因而可以利用逻辑运算符的短路性质来作为递归的终止条件。递归方法的思想是将一个大型复杂的问题层层转化为一个与原问题相似的规模较小的问题来求解,该问题可以将计算。以求得该位上的值,重复上述运算,所求结果相加即可得到该乘法运算的结果。原创 2023-01-18 18:03:50 · 100 阅读 · 0 评论 -
LeetCode 1137. 第 N 个泰波那契数
由于泰波那契数存在递推公式,因而可以用动态规划求解。动态规划的状态转移方程即为递推公式,边界条件即为。可以利用此特性,大幅度减少矩阵乘法的计算量,加快计算矩阵幂的速度。因此,只要能够快速算出矩阵。已知泰波那契数的边界条件时。原创 2023-01-18 15:31:20 · 150 阅读 · 0 评论 -
LeetCode 509. 斐波那契数
根据此递归方程,可以是用动态规划求解。状态转移方程即为递推公式,边界条件即为。可以利用此特性,大幅度减少矩阵乘法的计算量,加快计算矩阵幂的速度。开始,后面的每一项数字都是前面两项数字的和。表示)形成的序列称为 斐波那契数列。因此,只要能够快速算出矩阵。已知斐波那契数的边界条件是。斐波那契数 (通常用。原创 2023-01-17 21:08:33 · 79 阅读 · 0 评论 -
LeetCode 342. 4的幂
的整数次幂,计算结果也不会是绝对精度上的整数;因此要根据不同编程语言的精度,取一个足够小的值来判断计算结果是否为整数。整数 n 是 4 的幂次方需满足:存在整数 x 使得 n == 4x。不能为0,且要排除其它数对模运算的影响,先对。给定一个整数,写一个函数来判断它是否是。的幂次,再判断结果是否为整数。但是需要考虑的是,就算。原创 2023-01-16 12:09:43 · 80 阅读 · 0 评论 -
LeetCode 326. 3 的幂
的整数次幂,计算结果也不会是绝对精度上的整数;因此要根据不同编程语言的精度,取一个足够小的值来判断计算结果是否为整数。给定一个整数,写一个函数来判断它是否是。的幂时,需要除以3的次数小于该值。的幂次,再判断结果是否为整数。的幂次方需满足:存在整数。但是需要考虑的是,就算。是3的幂时,需要除以。原创 2023-01-16 11:20:05 · 73 阅读 · 0 评论 -
LeetCode 231. 2 的幂
前后其它位都为0;因而可以通过位运算将。提取出来,然后判断其它位是否为零即可。二进制减法和十进制并无太大差别,当。次幂的二进制表示中只有一位。的幂次在二进制中只有一个。,请你判断该整数是否是。原创 2023-01-15 17:57:24 · 80 阅读 · 0 评论 -
LeetCode 172. 阶乘后的零
首先不考虑计算出阶乘,再通过模运算得到尾随零。因为阶乘的增长速度是呈指数级的,从。的个数,仅考虑额外贡献的质因子个数,即这些数额外贡献了至少。的个数(具体证明见方法二),我们可以仅考虑质因子。= 120 ,有一个尾随 0。类型就已经无法存储阶乘的结果了;= 6 ,不含尾随 0。类型也已经无法存储阶乘的结果了。的个数之和,我们可以通过遍历。的倍数了,为了不重复统计。因此我们可以通过不断将。,并将除后的结果累加赋给。个,这些数至少贡献出了。的个数不会大于质因子。,具体证明见方法二。原创 2023-01-14 11:08:36 · 160 阅读 · 0 评论 -
LeetCode35. 搜索插入位置
LeetCode35. 搜索插入位置一、题目1、题目描述2、基础框架3、原题链接二、解题报告1、思路分析2、时间复杂度3、代码详解 一、题目 1、题目描述 给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。 请必须使用时间复杂度为 O(log n) 的算法。 2、基础框架 int searchInsert(int* nums, int numsSize, int target){ } 3、原题链接 35. 搜索插入位置 二、原创 2022-05-16 14:34:56 · 265 阅读 · 0 评论 -
LeetCode1991. 找到数组的中间位置
Exercise一、题目1、题目描述2、基础框架3、原题链接二、解题报告1、思路分析2、复杂度分析3、代码详解 一、题目 1、题目描述 给你一个下标从 0 开始的整数数组 nums,请你找到 最左边 的中间位置 middleIndex(也就是所有可能中间位置下标最小的一个)。 中间位置 middleIndex 是满足 nums[0] + nums[1] + … + nums[middleIndex-1] == nums[middleIndex+1] + nums[middleIndex+2] + …原创 2022-05-14 21:23:08 · 382 阅读 · 0 评论