当前位置: 首页 > news >正文

网站推广方案计划书高端网站定制商

网站推广方案计划书,高端网站定制商,网站建设装什么系统,seo提升关键词排名贪心算法#xff08;Greedy Algorithm#xff09;是一种在每一步选择中都采取当前最优解的算法#xff0c;希望通过局部最优解的选择#xff0c;最终得到全局最优解。它常用于解决最优化问题#xff0c;如最小生成树、最短路径等。本文将从理论到实践#xff0c;逐步引导… 贪心算法Greedy Algorithm是一种在每一步选择中都采取当前最优解的算法希望通过局部最优解的选择最终得到全局最优解。它常用于解决最优化问题如最小生成树、最短路径等。本文将从理论到实践逐步引导初学者掌握贪心算法在 C 语言中的实现。 什么是贪心算法 贪心算法的核心是 贪心选择性质 和 最优子结构 贪心选择性质每次选择当前看起来最优的解。最优子结构问题的最优解可以通过子问题的最优解合并得到。 举个例子假如你需要用最少的硬币找零每次选择最大面值的硬币就是贪心的思路。 贪心算法的适用场景 贪心算法并不总是能找到全局最优解适用场景包括 最小生成树问题如 Prim、Kruskal 算法活动选择问题最短路径问题如 Dijkstra 算法虽然不是纯贪心但核心思想类似 贪心算法的实现步骤 以下是实现贪心算法的通用步骤 分析问题是否满足贪心选择性质和最优子结构。排序根据特定规则对问题的元素进行排序通常需要一个比较函数。逐步选择从头开始选择符合条件的元素直到满足目标。验证结果确保结果满足问题的要求。 示例活动选择问题 问题描述 给定一组活动每个活动有一个开始时间和结束时间。你需要选择尽可能多的活动且这些活动之间不能重叠。 贪心思路 按活动的结束时间升序排序结束得越早留给后续活动的时间越多。依次选择每个活动如果它的开始时间不早于上一个已选活动的结束时间则选择它。 C语言实现 以下是活动选择问题的 C 语言实现代码 #include stdio.h #include stdlib.h// 定义活动结构体 typedef struct {int start;int end; } Activity;// 比较函数用于按结束时间排序 int compare(const void *a, const void *b) {Activity *activity1 (Activity *)a;Activity *activity2 (Activity *)b;return activity1-end - activity2-end; }// 贪心算法选择活动 void selectActivities(Activity activities[], int n) {// 按结束时间排序qsort(activities, n, sizeof(Activity), compare);printf(选择的活动如下\n);int lastEndTime 0;for (int i 0; i n; i) {if (activities[i].start lastEndTime) {printf(活动[%d]: 开始时间 %d, 结束时间 %d\n, i 1, activities[i].start, activities[i].end);lastEndTime activities[i].end;}} }int main() {Activity activities[] {{1, 3},{2, 5},{4, 6},{6, 7},{5, 9},{8, 9}};int n sizeof(activities) / sizeof(activities[0]);selectActivities(activities, n);return 0; }代码分析 数据结构用 struct 定义活动的开始和结束时间。排序用 qsort 对活动按结束时间升序排列。贪心选择逐一遍历排序后的活动如果活动的开始时间不与上一次选择的活动冲突就将其加入结果。 输入输出示例 输入活动 活动1开始时间1结束时间3活动2开始时间2结束时间5活动3开始时间4结束时间6活动4开始时间6结束时间7活动5开始时间5结束时间9活动6开始时间8结束时间9 输出活动 选择的活动如下 活动[1]: 开始时间 1, 结束时间 3 活动[3]: 开始时间 4, 结束时间 6 活动[4]: 开始时间 6, 结束时间 7 活动[6]: 开始时间 8, 结束时间 9总结 贪心算法的核心是找到局部最优解逐步逼近全局最优解。关键在于分析问题是否适合贪心策略排序规则是实现的基础。通过活动选择问题初学者可以掌握贪心算法的基本思想。 尝试多练习一些经典的贪心问题如背包问题、最短路径问题等你会发现贪心算法是一种高效且优雅的解决问题方法
http://www.dnsts.com.cn/news/239094.html

相关文章:

  • 西安网站开发xamokj企业做网站的好处千秋网络
  • 做网站要给ftp密码吗福州短视频seo获客
  • 网站宣传推广策划方案零售电商
  • 长春做网站 长春万网网络销售是什么样的工作
  • 中国建设银行的招投标网站wordpress教程 百度云
  • 自己做的网站为什么访问不dw做网站首页长宽设置多少
  • 网站二级导航制作wordpress 文章浏览数
  • 东莞建设网站官网怎么在百度创建网页
  • 网站快速备案安全网络营销企业网站推广
  • 公司付的网站费怎么做分录潜江网站搭建
  • 南县网站建设gta5房子网站建设中
  • 做网站滨州益阳网站建设公司有哪些
  • 什么网站可以做试卷做超链接的网站
  • vs2010 c 网站开发wordpress的管理员权限代码
  • 高明网站开发公司wordpress模板文件是哪个文件夹
  • 网上建网站网站界面用什么做的
  • 长沙seo网站优化个人微信注册网站
  • 领动营销网站建设做网站怎么添加图片
  • 提供五屏网站建设wordpress英文版改成中文
  • 哈尔滨网站建设好重庆网站建设mlfart
  • HS酒店网站建设企业网站有哪些举几个例子
  • wordpress中文主题站怎样看网站是什么语言做的
  • jsp做视频网站做网站接私活怎么收费
  • 建筑公司网站首页图片蓬莱做网站
  • 如何注册域名和网站北京一家专门做会所的网站
  • 自己怎样建网站做微商vue做网站如何优化seo
  • 李宁网站建设的可行性做英文网站费用
  • 美食类网站开发需求做足球预测的网站
  • 东莞樟木头网站建设二级建造师报考条件2021考试时间
  • 浏览器打开用dw做的网站说网站备案政策