常用算法(C语言版)课件.pptxVIP

  1. 1、本文档共44页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

程序设计之常用算法

解析算法【解析算法含义】所谓解析法(analysisalgorithm)是指用解析的方法找出表示问题的前提条件与结果之间关系的数学表达式,并通过表达式的计算来实现问题求解。【鸡兔同笼】一个笼子里面关了鸡和兔子(鸡有2只脚,兔子有4只脚,没有例外)。已经知道了笼子里面脚的总数a,问笼子里面至少有多少只动物,至多有多少只动物?【输入数据】第1行是测试数据的组数n,后面跟着n行输入。每组测试数据占1行,包括一个正整数a(a32768)。【输出要求】n行,每行输出对应一个输入。输出是两个正整数,第一个是最少的动物数,第二个是最多的动物数,两个正整数用空格分开。如果没有满足要求的情况出现,则输出2个0。【输入样例】【解题思路】这个问题可以描述成任给一个整数N:1.如果N是奇数,输出002.如果N是4的倍数,输出N/4N/23.如果N不是4的倍数,输出N/4+1N/2

解析算法1.#includestdio.h2不用数学方法,而试图用枚举所有鸡和兔的个数来求解此题,造成超时;3)试图把所有输入先存储起来,再输出,开的数组太小,因数组越界产生运行错;4)在每行输出末尾缺少换行符;4.intnCases,i,nFeet;//nCases表示输入测试数据的组数,nFeet表示输入的脚数。5)对输入输出语法不熟悉导致死循环或语法错。5.scanf(%d,nCases);16.return0;17.}

解析算法【解题思路】分析六个型号的产品占用箱子的具体情况如下:p6*6的产品每个会占用一个新的箱子,并且没有空余空间;p5*5的产品每个占用一个新的箱子,并且留下11个可以盛放1*1的产品的空余空间;p4*4的产品每个占用一个新的箱子,并且留下5个可以盛放2*2的产品的空余空间;p3*3的产品情况比较复杂:必须为3*3的产品另开新的箱子,剩余的空间共四种情况

解析算法第一种,3*3的产品的数目正好是4的倍数,所以没有空余空间;第二种,3*3的产品数目是4的倍数加1,这时还剩5个2*2的空位和7个1*1的空位;第三种,3*3的产品数目是4的倍数加2,这时还剩3个2*2的空位和6个1*1的空位;4.intN,a,b,c,d,e,f,y,x;//N用来存储需要的箱子数目,y用来存储2*2的空位数目第四种,3*3的产品数目是4的倍数加3,这时还剩1个2*2的空位和5个1*1的空位;//数组u表示3*3的产品数目分别是4的倍数,4的倍数+1,4的倍数+2,4的倍数+312.6.若113*.1产品的//这数里量有一x个小则技增巧加新(c+的3)箱/4子正+好N等;于c除以4向上取整的结果,下同14.y=5*d+u[c%4];19.}20.retrun0;21.}

枚举(穷举)算法枚举算法法,本质上就是有哪些信誉好的足球投注网站算法。【基本思想】枚举也称作穷举,指的是从问题所有可能的解的集合中一一枚举各元素。用题目中给定的检验条件判定哪些是无用的,哪些是有用的。能使命题成立,即为其解。intx,y,z;【优缺点】优点:算法简单,在局部地方使用枚举法,效果十分的好for(x=0;x100;x++)//1000000次循环for(y=0;y100;y++)缺点:运算量过大,当问题的规模变大的时候,循环的阶数越大,执行速度越慢。if(z%3==0x+y+z==1003*x+5*y+z/3==100)printf(%d%d%d\n,x,y,z);【百钱买百鸡问题】有一个人有一百块钱,打算买一百只鸡。到市场一看,公鸡一只3元,母鸡一只5元,小鸡3只1元,试求用100元买100只鸡,各为多少才合适?

枚举(穷举)算法采用枚举的方法进行问题求解,需要注意3个问题:?简单数学模型,数学模型中变量数量尽量少,它们之间相互独立。这样问题解的有哪些信誉好的足球投注网站空间的维度就小,反应到程序代码中,循环嵌套的层次就会少。我们上面从3维优化到一维。y=100-4*x;if(y%7==0y=0){?减少有哪些信誉好的足球投注网站的空间。利用已有知识,缩小数学模型中各个变量的取值范围,避免不必要的计算。反应到程序代码中,循环体被执行的次数少}?采用合适的有哪些信誉好的足球投注网站顺序。对有哪些信誉好的足球投注网站空间的遍历顺序要与数学模型中的条件表达式一致。

枚举(穷举)算法【生理周期问题】人生来就有三个生理周期,分别为体力、感情和智力周期,它们的周期长度为23天、28天和33天。每一个周期中有一天是高峰。在高峰这天,人会在相应的方面表

您可能关注的文档

文档评论(0)

173****5287 + 关注
官方认证
文档贡献者

该用户很懒,什么也没介绍

认证主体成都贵晓云科技文化有限公司
IP属地四川
统一社会信用代码/组织机构代码
91510106MAD5FC6E27

1亿VIP精品文档

相关文档