算法第四章作业

选点问题的贪心策略与分析
贪心策略:

  1. 将所有区间按右端点从小到大排序;
  2. 选择第一个区间的右端点作为第一个选点;
  3. 遍历后续区间:若当前区间左端点大于已选点,则选择该区间的右端点作为新的选点,重复此过程。
    贪心选择性质证明:
    假设最优解的第一个选点为x,贪心选择的第一个选点为y(y是第一个区间的右端点)。
    由于区间按右端点排序,y ≤ x(否则x无法覆盖第一个区间)。用y替换x后,y能覆盖所有被x覆盖的区间,新解仍为最优解。因此该策略满足贪心选择性质。

时间复杂度:
排序区间:O(n log n);
遍历选点:O(n);
整体时间复杂度为O(n log n)。

对贪心算法的理解
核心逻辑:每一步做局部最优选择,通过一系列局部最优得到全局最优。
适用条件:需同时满足

  1. 贪心选择性质:局部最优选择可导出全局最优;
  2. 最优子结构:问题的最优解包含其子问题的最优解。
    特点:
    优势:实现简单、时间复杂度低(通常为线性或线性对数级);
    局限性:仅适用于满足上述条件的问题(如“0-1背包”不适用,“区间覆盖”适用),需严格证明正确性。
posted @ 2025-12-28 00:34  蔡铭乐  阅读(0)  评论(0)    收藏  举报