尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

作业4

作业4
📅 发布时间:2026/6/19 20:55:29

问题:数轴上有n个闭区间[ai, bi]。取尽量少的点,使得每个区间内都至少有一个点(不同区间内含的点可以是同一个)

我的策略:
1.将所有区间按照右端点从小到大排序
2.初始化当前选择的点为第一个区间的右端点,计数器置为 1
3.依次检查后续每个区间,若当前区间的左端点大于已选择的点(即该区间不包含该点),则选择该区间的右端点作为新点,计数器加 1
4.输出计数器的值,即为最少需要的点数

证明:存在一个最优解,其第一个点选择的是右端点最小的区间的右端点。
设所有区间按右端点排序后为 I₁, I₂, …, I_n,其中 I₁ 的右端点最小。考虑任意一个最优解 OPT,设 OPT 中第一个点(最小的点)为 x。
若 x = I₁.right,则已满足。
若 x < I₁.right,则由于 I₁.right 是最小的右端点,所以 x < I₁.right ≤ I₁.left(否则若 x ≥ I₁.left,则 x 在 I₁ 内,但 x < I₁.right,那么 I₁.right 就不是最小右端点,矛盾)。因此 x 不在 I₁ 内,但 OPT 需要覆盖 I₁,所以 OPT 中必有另一个点 y ≥ I₁.left。此时可以用 I₁.right 替换 x,仍然覆盖所有区间(因为任何包含 x 的区间,其左端点 ≤ x < I₁.right,且右端点 ≥ I₁.right,所以 I₁.right 也在该区间内),且点数不变,仍是最优解。
若 x > I₁.right,则 I₁ 不可能被覆盖(因为 I₁.right 是最小的,x 更大,无法覆盖 I₁),矛盾。
因此,总可以构造一个最优解,其第一个点选为 I₁.right。贪心选择成立。

时间复杂度分析
排序:使用快速排序(sort),时间复杂度为 O(n log n)。
遍历:一次线性扫描,O(n)。
总时间复杂度:O(n log n)。

我的理解:
贪心算法是一种在每一步选择中都采取当前状态下最优(局部最优)的选择,从而希望导致全局最优解的算法策略。

相关新闻

  • 2026年网络安全展望:AI加速、攻击面扩张与专业化红队的未来
  • 接入Impala、Hive 的报表、BI、数据中台的国内厂商评价及接口框架
  • 完整教程:用Python识别图片中的文字(Tesseract OCR)

最新新闻

  • 白山市奢侈品手表包包回收门店推荐,这5家口碑店回收价格整理 - 谊识预商贸
  • Windows x64下ONNX Runtime 1.18.0 C++ CPU推理开发包(含头文件、静态/动态库及调试符号)
  • 学校比赛用什么微信投票工具?免费好用平台汇总 - 微信投票小程序
  • 郴州市奢侈品回收门店红黑榜:综合实力最强的五家店铺推荐 - 谊识预商贸
  • 7月1日超龄用工新规落地,企业劳动合同管理必须跨过这道合规关
  • 微信网页版访问终极指南:wechat-need-web插件完整使用教程

日新闻

  • 信任的进化:技术实现详解——如何用JavaScript构建博弈论模拟器
  • Terrakube自定义工作流:如何集成OPA、Infracost等工具扩展IaC能力
  • grunt-concurrent快速入门:5分钟学会并行运行Grunt任务

周新闻

  • 3步解锁iOS设备:applera1n激活锁绕过完全指南
  • 39 2026 人工智能证书终极盘点,普通人选 AI 证书可以从这些方向入手
  • Redis 暴露公网有多危险?从端口检查到补救步骤

月新闻

  • 【总结】入门篇:50句话让你记住架构核心概念
  • WeChatMsg技术方案解析:实现Mac微信数据自主管理的完整解决方案
  • WeChatMsg:革新性微信数据备份方案,打造你的专属数字记忆库

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号