- 博客(311)
- 收藏
- 关注
原创 咒语和药水的成功对数-二分查找2300-c++
二分查找,但会超时,主要是数组中的相同元素过度而导致延申查找超时(时间复杂度变成O(N^2),原本应为O(NlogN))
2024-03-31 20:18:43 293
原创 统计二叉树中好节点的数目-树1448-c++
用一个vector来记录遍历到某一节点后,它的路径上的所有结点值,只要当前节点值比它们都大,则为好节点。遍历顺序为前序遍历,因为是从根节点往下,每个子节点都能拿到它的路径节点值。
2024-03-31 15:57:01 212
原创 种花问题-数组605-c++
先在前后各插入0,这样可以保证flowerbed的长度大于等于3,然后从第2个到倒数第2个元素循环判断最近邻3元组是否都是0,是则在中间的0上插花。
2024-02-29 13:07:30 363
原创 除自身以外数组的乘积-数组238-c++
我们不必将所有数字的乘积除以给定索引处的数字得到相应的答案,而是利用索引左侧所有数字的乘积和右侧所有数字的乘积(即前缀与后缀)相乘得到答案。对于给定索引 i,我们将使用它左边所有数字的乘积乘以右边所有数字的乘积。下面让我们更加具体的描述这个算法。
2024-02-28 16:21:04 415
原创 字符串的最大公因子-数组1071-c++
暴力枚举解法,先找出所有的前缀,再按长度从大到小遍历,判断该前缀能否同时整除str1和str2,能则直接返回,否则继续遍历。若所有前缀都不符合,返回空字符串。优化思路:先求两个字符串长度的最大公约数x,然后直接判断长度为x的前缀是否满足要求。原理:欧几里得算法,两个整数的最大公约数等于其中较小数和两数相除余数的最大公约数。
2024-02-28 13:49:43 398
转载 最大矩形-单调栈85-python
暴力解法,把每个元素位置都当成一次矩形的右下角,时间复杂度O(m^2n),空间复杂度O(1)。单调栈,类似LC84-柱状图中最大的矩形,把它的解法和本题在融合到了一起,时间复杂度O(mn),空间复杂度O(n)。...
2022-07-02 13:46:34 187
原创 多数元素-数组169-python
没看答案,哈希表法。时间复杂度O(n),空间复杂度O(n)。摩尔投票法,时间复杂度O(n),空间复杂度O(1):
2022-06-30 22:43:39 302
原创 盛水最多的容器-双指针11-python&c++
没看答案,用双指针遍历height数组的左右两端,对于相对短的一边就移动(木桶效应),并不断更新答案。
2022-06-24 20:46:57 193
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人