石家庄网站建设外包公司哪家好,手机响应式网站开发,北京有限公司有哪些,wordpress二次主题今天开始刷贪心算法#xff0c;新手保护期中爽得一批
455.分发饼干
先把两个数组排序#xff0c;采用先满足胃口小的孩子#xff0c;饼干数组无条件向后扫描#xff0c;能满足孩子后再向后扫描胃口数组
class Solution {public int findContentChildren(int[] g, int[] …今天开始刷贪心算法新手保护期中爽得一批
455.分发饼干
先把两个数组排序采用先满足胃口小的孩子饼干数组无条件向后扫描能满足孩子后再向后扫描胃口数组
class Solution {public int findContentChildren(int[] g, int[] s) {int count 0;Arrays.sort(g);Arrays.sort(s);for (int i 0, j 0; i s.length j g.length; i) {if (s[i] g[j]) {j;count;}}return count;}
}
376. 摆动序列
从头开始扫描记录前一个和当前的差值使用左闭右开区间处理平峰满足一个加一个
class Solution {public int wiggleMaxLength(int[] nums) {if (nums.length 1) return nums.length;int count 1, pre 0, cur 0;for (int i 1; i nums.length; i) {cur nums[i] - nums[i - 1];if ((cur 0 pre 0) || (cur 0 pre 0)) {count;pre cur;}}return count;}
}
53. 最大子序和
贪心点在于舍弃掉小于0的部分代码上使用acc作为累加器小于等于0的时候重置
class Solution {public int maxSubArray(int[] nums) {if (nums.length 1) return nums[0];int sum Integer.MIN_VALUE,acc0;for (int i 0; i nums.length; i) {acc nums[i];sum Math.max(sum,acc);if (acc 0) acc 0;}return sum;}
}