
leeetcode
Danie_wu
努力学习中!!!!!
展开
-
图(leetcode-785)-判断二分图
class Solution { /** 参数:graph, graph[u]表示一个节点数组,由节点u的领接节点组成 */ public boolean isBipartite(int[][] graph) { // 定义 visited 数组,初始值为 0 表示未被访问,赋值为 1 或者 -1 表示两种不同的颜色。 int[] visited = new int[graph.length]; // 因为图中可能含.原创 2022-01-03 14:10:22 · 328 阅读 · 0 评论 -
贪心算法(leetcode-1005):k 次取反后最大化的数组和
思路:1、对原数组排一次序。2、迭代k次取反中,考虑小于0和大于0的情况。 2.1 小于0的数组区间,直接取反,到达负数和正数界限时跳过。 2.2 大于0的数组区间,直接取反。3、累计数组。class Solution { public int largestSumAfterKNegations(int[] nums, int k) { if (nums.length == 1) return k % 2 == 0 ? nums[...原创 2021-10-20 10:20:57 · 223 阅读 · 0 评论 -
贪心算法(leetcode-45):跳跃游戏||
思想:每次在上次能跳到的范围(end)内选择一个能跳的最远的位置(也就是能跳到max_far位置class Solution { public int jump(int[] nums) { int end = 0; //上次跳跃可达范围右边界(下次的最右起跳点) int maxFar = 0; //目前能跳到的最远位置 int step = 0; // 跳跃次数 for(int i = 0; i < nums原创 2021-10-19 11:52:18 · 1449 阅读 · 0 评论 -
贪心算法(leetcode-55):跳跃游戏
思路:跳几步无所谓,关键在于可跳的覆盖范围!不一定非要明确一次究竟跳几步,每次取最大的跳跃步数,这个就是可以跳跃的覆盖范围。这个范围内,别管是怎么跳的,反正一定可以跳过来。问题就转化为跳跃覆盖范围究竟可不可以覆盖到终点!算法步骤:每次移动取最大跳跃步数(得到最大的覆盖范围),每移动一个单位,就更新最大覆盖范围。贪心算法局部最优解:每次取最大跳跃步数(取最大覆盖范围),整体最优解:最后得到整体最大覆盖范围,看是否能到终点。class Solution { //跳...原创 2021-10-19 11:11:52 · 1799 阅读 · 0 评论 -
贪心算法(leetcode-122):买卖股票的最佳时机
思路:1、把利润分解为每天为单位的维度,而不是从0天到第3天整体去考虑!那么根据prices可以得到每天的利润序列:(prices[i] - prices[i - 1]).....(prices[1] - prices[0])。收集正利润的区间,就是股票买卖的区间,而我们只需要关注最终利润,不需要记录区间。2、局部最优:收集每天的正利润,全局最优:求得最大利润。class Solution { public int maxProfit(int[] prices) {原创 2021-10-19 11:01:44 · 250 阅读 · 0 评论 -
贪心算法(leetcode-376):摆动序列
思路:局部最优:删除单调坡度上的节点(不包括单调坡度两端的节点),那么这个坡度就可以有两个局部峰值。整体最优:整个序列有最多的局部峰值,从而达到最长摆动序列。实际操作上,其实连删除的操作都不用做,因为题目要求的是最长摆动子序列的长度,所以只需要统计数组的峰值数量就可以了(相当于是删除单一坡度上的节点,然后统计长度)class Solution { public int wiggleMaxLength(int[] nums) { if(nums.length <.原创 2021-10-18 20:39:30 · 229 阅读 · 0 评论 -
贪⼼算法(leetcode-455):分发饼⼲
两个思路: 1、优先考虑饼干,小饼干先喂饱小胃口 2、优先考虑胃口,先喂饱大胃口//方法一 优先考虑饼干,小饼干先喂饱小胃口class Solution { public int findContentChildren(int[] g, int[] s) { Arrays.sort(g); Arrays.sort(s); int index = 0; //小饼干先喂饱小胃口 for(int i = 0; ...原创 2021-10-17 23:53:48 · 141 阅读 · 0 评论