博主头像
7024w的自留地

觉宇宙之无穷,识盈虚之有数

Leetcode 763.划分字母区间

个人感觉很有意思的一道题~大体思路就是,从0下标开始遍历.确定0下标所指的字符的最远位置,如果最远位置与当前位置下标相同(即只出现一次),则加入结果集。如果有更远的位置,从该下标的下一个位置开始遍历,依次寻找从0...maxPos中的字符的更远位置,如果存在更远的,更新maxPos.当遍历位置与maxPos相同时,加入结果集。本题可使用int[]数组代替HashMap以提高效率。public Li

LC 动态规划-背包问题-416

方法1.可以采用一个二维数组存放该数组中的数相加所能到达的每个数值,最后判断是否有target.public boolean canPartition(int[] nums) { int len = nums.length; if(len == 1){ return false; } if(len == 2){ return nums

Leetcode 动态规划专题

1.斐波那契数一.常见的递归解法public int fib(int n) { if(n == 0){ return 0; } if(n == 1){ return 1; } return fib(n-1) + fib(n-2); } 此方法严重浪费内存和时间,可利用数组对其优化.二.数组解法 if(n == 0){