01 2022 档案
摘要:题目 1567. 乘积为正数的最长子数组长度 解法 解法一 算是贪心吧? 遍历的方向从前往后也是一样的道理,只不过当时写代码的时候从后往前想的,就这么写了 class Solution { /** * @param Integer[] $nums * @return Integer */ funct
阅读全文
摘要:题目 152. 乘积最大子数组 解法 每次取一个最小的,一个最大的 如果最小的乘积和当前的值乘完之后变成了正数反而变大了,那最大值就是它 class Solution { /** * @param Integer[] $nums * @return Integer */ function maxPr
阅读全文
摘要:题目 53. 最大子数组和 解法 #dp 第一版写的时候,可以加一个 dp 数组,保存每个节点的最大值 dp 公式 c
阅读全文
摘要:题目 918. 环形子数组的最大和 解法 求两个值,一个是子数组最小值,一个是子数组最大值 环形数组如果没有跨最后一个那就是子数组最大值 如果跨了最后一个那就是 总数- 子数组最小值 为什么是 total-min ? 如果成环状,那么数组将被分成两段:头和尾 总数是不变的,如果其他部分加起来最大,那
阅读全文
摘要:题目 45. 跳跃游戏 II 解法 遍历的同时记录 stepCnt 只有在第一个 max 遍历完之后,才可以增加 stepCnt class Solution { /** * @param Integer[] num
阅读全文
摘要:题目 55. 跳跃游戏 解法 最终目标是求最大跳跃距离,如果最后发现可以跳到比最后一格要多,那么也就可以跳到最后一格 可以按照两种思想理解 贪心,每次求最大的跳跃距离 dp 公式: $f_n=\left { \begin{array}{lr} max(f_{n-1}, nums[n] + n), &
阅读全文
摘要:题目 213. 打家劫舍 II 解法 因为是首尾相连的 用原来的 198 题的方法有可能会多算一个 经过一番尝试之后,最终使用了两次遍历的方法 第一次,从0开始,不计算最后一个 第二次,从1开始,计算上最后一个 当然,ret 数组可以简化成两个变量,这里就不继续处理了 class Solution
阅读全文
摘要:# 题目
[198. 打家劫舍](https://leetcode-cn.com/problems/house-robber/)
# 解法
阅读全文
摘要:换输入法的背景 平时用的输入法都会联网上传很多数据到云端,这些数据经过大数据分析之后,能够用来精准推送一些你感兴趣的东西,烦不胜烦。 于是,我打算找一个不会联网的输入法,并且切换成本还不能太高。 后来找到了,那就是 Rime(中州韵输入法引擎)。 Rime 官网 配置 但是呢,如果你直接使用,会发现
阅读全文
摘要:题目 746. 使用最小花费爬楼梯 解法 $$ fn= \left{ \right. $$ class Solution {
阅读全文
摘要:我的 Obsidian 链接图,不知不觉已经使用了一年多了
阅读全文
摘要:题目 1137. 第 N 个泰波那契数 解法 跟斐波纳契数列一样的解法 class Solution { /** * @param Integer n) { if ($n <= 0) { return 0; }
阅读全文
摘要:题目 506. 相对名次 解法 class Solution { /** * @param Integer[] score) { if (empty($score)) { return
阅读全文
摘要:#leetcode 题目 501. 二叉搜索树中的众数 解法 主要是考的一个特性: 二叉搜索树的中序遍历结果是递增的数列 然后就相当于是对一个递增数列求众数的逻辑了 class Solution { private base = null; priva
阅读全文
摘要:题目 496. 下一个更大元素 I 解法 遍历一遍 nums2 , 算出来每个元素的下一个最大元素,然后遍历 nums1 取结果 暴力解法: class Solution { /** * @param Integer[] nums2 * @ret
阅读全文
摘要:题目 500. 键盘行 解法 很简单,首先维护一个字符位置的映射关系,判断每个字符的每一位是否在一行 #哈希表 class Solution { const LINE_CHARS = [ 'q' => 1, 'w' => 1, 'e' => 1, 'r' => 1, 't' => 1, 'y' =>
阅读全文
摘要:题目 495. 提莫攻击 解法 返回中毒秒数 class Solution { /** * @param Integer[] duration * @return Integer */ function findPoisonedDurati
阅读全文
摘要:题目 492. 构造矩形 解法 class Solution { /** * @param Integer area) { if ($area <= 0) { return []; }
阅读全文
摘要:#leetcode 题目 482. 密钥格式化 解法 用了很多 php 的函数,但是思想就是几个步骤 将源字符串的 - 去掉 从后往前遍历字符串,每 $k 个字符一组,拼接上 - 字符 class Solution { /** * @param String $s * @param Integer
阅读全文