海智专题

海智算法训练营第三十四天 | 第八章 贪心算法 part04 | ● 860.柠檬水找零 ● 406.根据身高重建队列 ● 452. 用最少数量的箭引爆气球

今日任务: 1.贪心算法找零 2.双维度问题解法 3.判断重叠区间问题 1.贪心算法找零 力扣题目链接 这道题较简单,就是分清情况区别对待就ok了 情况一:账单是5,直接收下。情况二:账单是10,消耗一个5,增加一个10情况三:账单是20,优先消耗一个10和一个5,如果不够,再消耗三个5 所以局部最优:遇到账单20,优先消耗美元10,完成本次找零。全局最优:完成全部账

海智算法训练营第三十三天 | 第八章 贪心算法 part03 | ● 1005.K次取反后最大化的数组和 ● 134. 加油站● 135. 分发糖果

今日任务: 1.k次取反后最大化数组和 2.贪心解决加油站问题 3.左右边界分别处理——分发糖果 1.k次取反后最大化数组和 力扣题目链接 这道题比较简单就不多说了。 class Solution {public int largestSumAfterKNegations(int[] nums, int k) {Arrays.sort(nums);for (int i =

海智算法训练营第二十九天 | 第七章 回溯算法part05 | * 491.递增子序列* 46.全排列* 47.全排列 II

今日目标: 1.查找所有的非递减子序列 2.全排列 3.全排列II 1.查找所有的非递减子序列 题目:非递减子序列 原理:这道题不能用之前那种去重的方法,因为那些需要有序,这样只需要比较前后两个的值是否相同,而这道题不能使用排序,因为题目的要求是以当前序列的顺序找出他的非递减子序列。 例如: 输入: [4, 6, 7, 7]输出: [[4, 6], [4, 7], [4,