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

本地服务器网站建设appstar官网

本地服务器网站建设,appstar官网,网站导航栏怎么做,宁波企业建网站报价今天小编带大家了解一下什么是“打擂台”算法。 一.思路分析 可以定义一个数组arr#xff0c;长度为10#xff0c;用来存放10个数字#xff0c;设计一个函数Max#xff0c;用来求两个数中的较大值#xff0c; 定义一个临时变量tmparr[0],保存临时最大的值#xff0c;下标… 今天小编带大家了解一下什么是“打擂台”算法。 一.思路分析 可以定义一个数组arr长度为10用来存放10个数字设计一个函数Max用来求两个数中的较大值 定义一个临时变量tmparr[0],保存临时最大的值下标是index,然后进行两两比较如果下一个数组元素比临时最大值大那么就把tmp换成新的数值。并记录下它的下标最后剩下来的临时最大值就是整个数组中的临时最大值。 二.打擂台算法(了解即可)   背景拳击比赛中先选出一个擂主然后挑战者来挑战如果成功 那么挑战者成为新的擂主否则擂主捍卫成功当所有挑战者都挑战完成后那么最后的那个擂主就是最强的。 同样的本题中先让arr[0]成为擂主然后依次让arr[1],arr[2]...arr[10],进行比较大小如果arr[0]arr[1],那么擂主让给arr[1],即tmparr[1],并保存下它的下标1。依次类推直到选到最大的数字。 .打擂台算法Tournament algorithm也被称为淘汰赛算法是一种用于解决最值问题的算法。它通过将问题的输入从不同的角度进行两两比较从而找到最大值或最小值。 下面以找出数组中的最大值为例来解释打擂台算法 1. 将待比较的元素按照一定的规则进行分组。例如将数组中的元素两两分组进行比较如果数组个数为奇数则最后一个元素被单独分组。 2. 在每个分组中进行比较并记录每组的胜者。比较的方式可以是简单的大小比较或者根据特定的条件进行比较。 3. 将每个分组的胜者再次组成新的分组继续进行两两比较直到只剩下一个胜者。 4. 最后剩下的那个胜者就是数组中的最大值。 这个算法的特点是通过不断地比较和淘汰逐渐缩小了待比较的范围最终找到了最大值或最小值。 打擂台算法的时间复杂度为O(log n)其中n是输入元素的个数。它的效率非常高尤其适用于需要找到最值的场景如数组中的最大值、最小值等。 需要注意的是打擂台算法通常需要满足比较的元素具有传递性即如果元素A比元素B大元素B比元素C大则元素A必定比元素C大。否则算法可能得不到正确的结果。 三.图解 四.代码分析 定义出最大值函数 int Max(int a, int b) {return a b ? a : b; } 定义出数组并从键盘获取10个数字 int arr[10] { 0 };printf(请输入10个数字\n);int len sizeof(arr) / sizeof(arr[0]);for (int i 0;i len;i){printf(请输入第%d个数字 :, i 1);scanf(%d, arr[i]);} 定义出“擂主”并进行比赛并保存新的擂主信息 int tmp arr[0];//临时最大值int index 0;//保存临时最大值的下标for (int i 1;i len;i){if (Max(arr[i], tmp) tmp){tmp arr[i];//把当前最大值赋给临时最大值index i;//保存临时最大值的下标}} 输出 printf(最大值是%d,是第%d个数字, tmp, index 1); 五.完整代码 int Max(int a, int b) {return a b ? a : b; } int main() {int arr[10] { 0 };printf(请输入10个数字\n);int len sizeof(arr) / sizeof(arr[0]);for (int i 0;i len;i){printf(请输入第%d个数字 :, i 1);scanf(%d, arr[i]);}int tmp arr[0];//临时最大值int index 0;//保存临时最大值的下标for (int i 1;i len;i){if (Max(arr[i], tmp) tmp){tmp arr[i];//把当前最大值赋给临时最大值index i;//保存临时最大值的下标}}printf(最大值是%d,是第%d个数字, tmp, index 1);return 0; } 六.运行结果 创作不易 如果这份博客对你有帮助可以给博主一个免费的点赞以示鼓励。 欢迎各位帅哥美女点赞评论⭐收藏⭐谢谢 如果有什么疑问或不同的见解欢迎在评论区留言哦。 祝各位生活愉快⭐
http://www.hkea.cn/news/14542751/

相关文章:

  • 电子商务网站建设论文摘要好看的网站设计公司
  • 渭南房产网站制作网页设计师证书含金量高吗
  • 建网站的公司公司网站建设公司响应式网站模板
  • 旅游攻略网站模板医院建设网站与托管
  • 权威的手机网站建设com域名续费多少钱
  • 云南建设厅网站公示重庆最大本地论坛
  • 网站建设网络推广图片多用户商城系统哪家好些
  • 网站建设公司找博行服装租赁 网站 php
  • 博客类网站建设实体店怎么推广引流
  • 苏州市姑苏区建设局网站邯郸装修公司
  • 上海网站建设培训班接入商 济南网站建设
  • 黄浦上海网站建设广州做创客教室的厂家网站
  • 网站怎么做关键词研究WordPress上传ftp设置
  • 网站开发报价标准怎样在百度做网站表白
  • 年底 网站备案网站介绍ppt怎么做
  • 网站推广公司排名方案如何用博客网站做cpa
  • 免费试用网站 源码镇江网站设计公司报价
  • 如何利用ps做网站怎样创建设计公司网站
  • 广州黄埔区建设局网站局推广小程序的营销策略
  • 广州企业网站建设公司网站建设与推cctv-10
  • 网站门户建设流程apple 官网
  • 深圳福田做网站公司济宁建设局官方网站
  • 北京招聘网站建设网站建设工作总结
  • 网站12栅格系统怎么做地推团队如何收费
  • 最少的钱怎么做网站上海哪个网站最好用
  • 电话语音聊天网站建设多少钱wordpress 顶部菜单
  • 温州 网站建设wordpress禁用文章修订
  • 廊坊哪些公司做网站合肥最新通知今天
  • 简述企业网站的建设过程wordpress安装主题提示错误
  • 公司做卖网站有前景吗这样建立网站