Meteor
  • About
  • Tags
  • Categories
  • Java
    • JVM
      • JVM第一篇—内存区域
  • 其它
    • Grpc
    • MyBatis-generator
    • Spring事务
    • 日志切面入库
    • 登录鉴权
    • 读取写入Excel
  • 算法
    • 二分查找
    • 划分字母区间
    • 层序遍历
    • 打家劫舍
    • 翻转链表
    • 跳跃游戏
  • 设计模式
    • 代理模式
    • 单例模式
  • 项目
    • small-spring
      • 利用模板模式对IOC功能分层
      • 实现有参构造的实例化
      • 极简IOC
      • 递归填充属性

打家劫舍

198. 打家劫舍 解题思路对于当前房间有两种选择,偷或不偷。如果选择偷,那么前一个房间就不能偷,如果不偷,那当前房间就相当于不存在,等价于面对前一个房间,而前一个房间的结果已经计算出来了,因此只需要比较出偷或不偷两种方式的较大值即为面对当前房间的结果。 首先利用一个数组用来存储已经计算出来房间的结 ...
2023-10-13 算法

划分字母区间

763. 划分字母区间 解题思路将相同字母划分到同一片段,且字符串的顺序不能改变。 利用贪心思想,每次都找某个字符的最右边的位置,即如果找字符’a’所在的片段,先要确定它的结束位置,然后在’a’的开始位置到结束位置中间寻找是否有其它字符的结束位置超出了’a’的范围,如果超出了,那么就以新的字符继续开 ...
2023-10-09 算法

跳跃游戏

55. 跳跃游戏 解题思路判断是否能跳到最后一个节点,只要保证到达倒数第二个节点时,依然有跳跃的能力。首先要排除一种特殊情况,即当数组中第一个元素为0且数组长度大于1时,此时一定返回false。其次,令cur等于nums[0],表示当前能跳跃的最大步数,然后从索引为1的位置开始循环,先将cur减一, ...
2023-10-08 算法

翻转链表

92 翻转链表|| 解题思路1整个链表可以分成三段,1-left-1、left-right、right-end,只需要用栈存储从left到right的节点,然后一个个弹出栈,逆序连接在一起,然后将三段拼接在一起即可。 代码class Solution { public ListNod ...
2023-06-01 算法

层序遍历

102 二叉树的层序遍历 解题思路1迭代法:使用队列保存每一层的节点,然后将一层的节点陆续出队,节点值添加到list中,将子节点中非空节点加入到队尾,遍历完一层节点后,将list加入到结果中。 代码class Solution { public List<List<Int ...
2023-05-31 算法

二分查找

704 二分查找 解题思路1由于数组已经有序且每个值都不重复,因此可以采用二分法,而二分法既可以使用迭代也可以采用递归的方式。迭代法:本题的关键在于确定边界条件,即while循环的条件是left<=right还是left<right,这取决于right初始值是nums.leng ...
2022-11-28 算法

©- Meteor
Theme Tree by Wu Jun Powered by Hexo