力扣
文章平均质量分 72
Rayaner
这个作者很懒,什么都没留下…
展开
-
力扣之628题2021-03-25
1、#628 三个数的最大乘积 # 时间复杂度o(nlogn),空间复杂度o(logn)(注意别忘了排序还有空间复杂度) 小结:能用暴力算法的肯定不行,一般几个for循环后都会超出时间限制。要想那种遍历一遍就可以的方法,比如哈希表数据结构,或者想利用排序,虽然是o(nlogn),但起码比n³要好。 注意方法思路:不用暴力算法后,确定好某种其他方法,就按照这种方法的思路去写一些过程或者穷举出样例,这样去找规律,然后去设置代码条件。 穷举时要么举一般的普通的例子,如果发现得到的规律不能够涵盖所有,要把所原创 2022-04-12 10:00:07 · 169 阅读 · 0 评论 -
力扣之1550题219题2021-03-24
1、#1550存在连续三个奇数的数组 #数组 时间复杂度o(n),空间复杂度o(1) ①关键:报错,堆缓冲区溢出,内存错误。 解决:把在前面加上int n=arr.size(),后面直接写i<n-2。或者直接在后面写上i+2<arr.size()。 原因:用到size()运算时,因为size()的返回值类型是unsigned int,会把后面的相关运算数-2都强制换成无符号整型,于是报错数组越界。 参考:https://blog.csdn.net/flora_zhl/article/d原创 2022-04-12 09:59:10 · 216 阅读 · 0 评论 -
力扣之867题2021-03-22
一、转置矩阵 时间复杂度为O(mn),空间复杂度为O(1),除了返回值以外,额外使用的空间为常数。 1、有一种情况没有试,这种其实通不过,举例子时应注意举的两个特例的区别,这个要考虑在内 没有考虑转置矩阵的存储问题,其实跟原矩阵已经不一样,区别是行列数的大小不同,需要新建矩阵,不然就会报内存错,堆缓冲区溢出 因为若使用原数组,边界会越界。 2、大体改完的小毛病,注意二维数组元素的书写;定义m,n若都是同一数据类型,可以只写一个int。 3、注意, vector二维数组已知行数和原创 2022-04-12 09:57:24 · 171 阅读 · 0 评论