首页 > 其他分享 >贪心

贪心

时间:2024-12-18 10:30:48浏览次数:6  
标签:哈夫曼 端点 权值 区间 节点 贪心

  1. 在数轴上给n个区间,要在数轴上放尽量少的点,使每个区间内都有点。先将所有区间按右端点从小到大排序,然后考虑对于每个区间,若其涵盖最后一个选的点,则不用放,否则在该区间右端点上放个点。(
  2. 哈夫曼树与哈夫曼编码:
    给定若干个叶子节点点权,构造一棵k叉树,要所有叶子到根距离乘叶子点权之和最小,为哈夫曼树。
    考虑贪心,我们先让所有叶子节点自己为一棵树,每次贪心的堆维护前k个(k为树的叉树)根节点权值最小的树,将它们合并成一棵树,连向同一个构造出的根节点,树的根节点取值就是他的子节点权值之和,最后形成的树就是哈夫曼树。
    哈夫曼编码,参见荷马史诗,每两个点合并时将两个点的权值加到ans中即可去除第一问,第二问我们始终让权值相同的点中代表的树的最深深度最小的在前面即可
  3. 给定一个序列,有k个区间,问最多能放多少个区间在序列上使没有区间重叠。可以将这些区间按右端点升序排序,若当前区间不包括已经选到底最靠右的点,则选。(

标签:哈夫曼,端点,权值,区间,节点,贪心
From: https://www.cnblogs.com/OIergyy/p/18614133

相关文章

  • Problem: 1338. 数组大小减半 贪心 模拟 法 简单易懂
    Problem:1338.数组大小减半思路因为要选择最小的整数集合,这里用Counter容器来统计下所有各种数字的大小,然后按照值来排序,设置target来表示要到达什么位置,这里最好不要用整除,防止要计算的大于arr,但是len(arr)是奇数,这里total表示删除到这个位置已经删除了多少数字,如果大......
  • 传知代码-改进贪心算法(NGSOR)
    一、算法背景及意义(一)背包问题背景背包问题是组合优化领域中的经典问题,具有广泛的实际应用场景,如资源分配、项目投资决策等。扩展简化折扣{0-1}背包问题(ESD{0-1}KP)是背包问题的一种变体,它在传统背包问题的基础上增加了一些复杂的约束条件,如物品的折扣系数以及每个项集中多个......
  • 加油站问题(贪心)
    题目:在一条环路上有 n 个加油站,其中第 i 个加油站有汽油 gas[i] 升。你有一辆油箱容量无限的的汽车,从第 i 个加油站开往第 i+1 个加油站需要消耗汽油 cost[i] 升。你从其中的一个加油站出发,开始时油箱为空。给定两个整数数组 gas 和 cost ,如果你可以按顺序......
  • 贪心算法 part03
    文章参考来源代码随想录134.加油站方法一分类讨论:情况一:如果gas的总和小于cost总和,那么无论从哪里出发,一定是跑不了一圈的情况二:rest[i]=gas[i]-cost[i]为一天剩下的油,i从0开始计算累加到最后一站,如果累加没有出现负数,说明从0出发,油就没有断过,那么0就是起点。情况三:如......
  • 贪心策略(未完结)
    每次都试图解决问题的尽量大的一部分如兑换硬币,先以最多数量的最大面值来迅速减少找零面值首先确定基本结束条件(最直接的情况——其面值正好等于某种硬币)减小问题的规模递归算法:#!/user/bin/envpython3#-*-coding:utf-8-*-defrecMC(coinValueList,change):mi......
  • 贪心算法专题(四)
    目录1.单调递增的数字1.1算法原理 1.2算法代码2.坏了的计算器2.1算法原理2.2算法代码3.合并区间3.1算法原理3.2算法代码4.无重叠区间4.1算法原理4.2算法代码5.用最少数量的箭引爆气球5.1算法原理​5.2算法代码1.单调递增的数字738.单调......
  • 贪心算法part01
    文章参考来源代码随想录贪心算法:局部最优到全局最优455.分发饼干这里的局部最优就是大饼干喂给胃口大的,充分利用饼干尺寸喂饱一个,全局最优就是喂饱尽可能多的小孩可以尝试使用贪心策略,先将饼干数组和小孩数组排序然后从后向前遍历小孩数组,用大饼干优先满足胃口大的,并统计......
  • P10046 [CCPC 2023 北京市赛] 哈密顿(贪心)
    题意给定\(2n\)个点,第\(i(1\lei\len)\)个点的点权为\(a_i\),第\(j(n<j\le2n)\)个点的点权为\(b_i\),对于每个\(i,j(1\lei\len<j\le2n)\),在\(i,j\)间连一条边,边权为\(|a_i-b_j|\)。定义一条路径的权值为经过的边的边权之和,求权值最大的哈密顿回路。\(n\le10^5\)......
  • 「Java实战」贪心算法VS穷举法:从理论解析到案例实战,全面掌握算法精髓
    「Java实战」贪心算法VS穷举法:从理论解析到案例实战,全面掌握算法精髓目录引言项目概述技术栈贪心算法详解穷举法详解广播覆盖问题问题描述贪心算法解决方案穷举法解决方案钱币找零问题问题描述贪心算法解决方案穷举法解决方案代码示例Maven依赖配置运行和测试结......
  • 3、贪心算法python(活动选择问题、单源最短路径)
    一、活动选择问题给定一组活动,每个活动都有一个开始时间和结束时间,要求选择尽可能多的活动,并且这些活动之间不能有重叠。贪心策略的核心思想是每次选择结束时间最早的活动,这样可以为后续的活动留出更多的时间空间。活动选择问题的贪心算法步骤1、排序:首先按活动的结束时间对......