摸鱼学大师
摸鱼学大师
全部文章
题解
未归档(8)
归档
标签
去牛客网
登录
/
注册
摸鱼学大师的博客
问月月不明?
全部文章
/ 题解
(共86篇)
题解 | #子数组最大乘积#
来自专栏
思路: 由题目中给到的信息: 数组是double型,可正可负可零,也即是说乘积可能突然变小(正x负)也可能突然变大(负x负) 返回的子数组必须是连续的一段 这是一道典型的动态规划的题,解题最重要的便是找到状态方程。 方法一:动态规划 如果设置max[i]表示当前i及之前的乘积最大值,min[i]...
动态规划
数组
子数组乘积
2021-07-16
2
684
题解 | #丑数#
来自专栏
思路: 由题目中给到的信息: 丑数仅由2、3、5的因子组成 1是第一个丑数 现在要寻找第n个丑数,最简单值观的方法莫过于从1开始依次往后递增加1,判断每个数是否将2除尽、3除尽、5除仅为1且不含余数,若是则丑数加1,继续往后找。此方法问题在于随着数字不断增大,要除尽2、3 、5需要多次循环,且中...
丑数
数组
贪心算法
因子
2021-07-15
0
701
题解 | #滑动窗口的最大值#
来自专栏
思路 根据题意: 要寻找每个滑动窗口的最大值,每次只滑一位 size等于0或者大于数组长度,都返回空值 方法一:暴力法 暴力解法应该是最容易想到的,只需要遍历数组的同时往后遍历每个窗口,找出最大值即可。 class Solution { public: vector<int> m...
滑动窗口
双向队列
数组
2021-07-15
0
615
题解 | #数据流中的中位数#
来自专栏
思路: 题目中给出的信息: 寻找中位数 数据在不断增长 传统的寻找中位数的方法便是排序之后,取中间值或者中间两位的平均即可,但是因为数组在不断增长, 每增长一位便排一次,很浪费时间,于是可以考虑在增加数据的同时将其有序化。 方法一:插入排序法 具体做法: 用一vector存储输入的数据流。Ins...
堆
中位数
数组
排序
堆排序
插入排序
2021-07-15
0
735
题解 | #扑克牌顺子#
来自专栏
思路: 题中给出的信息是最多4个零,因此必有一张非零牌,分析顺子两点基本情况: 不能有重复的非零牌 非零牌之间最大相差为4 若是两张非零牌相差大于4,则需要4张零牌(超出了限制),若是小于等于4,又不重复的情况下,要么零牌补齐,要么本身就是相邻的数字。 故有两种解决方案。 方法一:哈希表 具体做...
哈希
模拟
数组
扑克牌
顺子
排序
顺序
2021-07-14
0
605
题解 | #两数之和#
来自专栏
思路: 题中可以看出: 必定存在唯一解,不用考虑特殊情况 返回的下标是数组下标加1 最能想到的办法莫过于暴力解决,直接遍历两层循环,相加与target比较,若相同则跳出循环。 方法一:暴力比较法 class Solution { public: vector<int> two...
哈希
两数之和
数组
2021-07-14
8
1328
首页
上一页
1
2
3
4
5
6
7
8
9
下一页
末页