贪心
一.简介
贪心法是一种解决问题的策略。如果策略正确,那么贪心法往往是易于描述,易于实现的。选择策略最关键的是读懂题,翻译能力和抽象能力。
二.题目分类:
主要包括两大类:
1.背包相关问题,细分为
1.1最优装载问题:给出n个物品,第i个物体重量为wi,选择尽量多的物体,使得重量不超过C。
1.2部分背包问题: 有n个物体,第i个物体的重量为wi,价值为vi,在总重量不超过C的情况下,让总价值尽量高。而且可以拿走物体的一部分。
1.3乘船问题:有n个人,第i个人重量为wi。每艘船的最大载重量均为C,且最多只能乘两个人。用最少的船装载所有人。
2.区间相关问题:
细分为:
2.1选择不相交区间:数轴上有n个开区间。选择尽量多个区间,使得这些区间两两没有公共点。
2.2区间选点问题: 数轴上有n个闭区间。取尽量少的点,使得每个区间内都至少有一个点。
2.3区间覆盖问题:数轴上有n个闭区间,选择尽量少的区间覆盖一条指定线段。
2.4选点成线问题:按点的某种属性单调递增。一维的和二维的。结构体排序
3.huffman编码