《用穷举法解决问题.pptx》由会员分享,可在线阅读,更多相关《用穷举法解决问题.pptx(12页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、呼和浩特市第二中学呼和浩特市第二中学用穷举法解决问题用穷举法解决问题2018年5月主讲人:张鹏飞主讲人:张鹏飞什么是穷举法?穷举法也叫枚举法、列举法,它将求解对象一一列举出来,然后逐一加以分析、处理,并验证结果是否满足给定的条件,穷举完所有对象,问题将最终得以解决。特点:特点:一一列举验证结果是否满足给定的条件列出问题的可能范围使用循环结构来实现程序设计经典问题:“百钱买百鸡问题”我国古代数学家张丘建在算经一书中曾提出过著名的“百钱买百鸡”问题。该问题叙述如下:鸡翁一,值钱五;鸡母一,值钱三;鸡雏三,值钱一;百钱买百鸡,则翁,母,雏各几何?用数学思维解决“百钱买百鸡问题”设变量:公鸡为X只母鸡
2、为Y只小鸡为Z只 像这样,用数学公式找不到更好的求解公式或者规则时,为了解决这类问题,人们往往利用计算机高速运算的特性,采取一一尝试的办法,最终得出求解结果。确定穷举范围穷举时,如何用好百鸡和百钱两个已知条件,选择合适的穷举法,使程序最优化?变量的设置:找出下列变量的最小穷举范围X的范围:Y的范围:Z的范围:同学甲同学乙用程序求解“百钱买白鸡”问题Python中for循环语句的使用Z=100-X-Y最优最优同学丙应用穷举法解组合问题:小明有5本不同的新书,要借给ABC三位小朋友,若每人每次只能借一本,则可以有多少种不同的借法。要求输出所有借法并统计有多少种借法。穷举法的一般模式1、列出问题的可能范围,一般用循环或者循环嵌套结构来实现。2、探究、挖掘出问题解约束条件。3、根据约束条件,优化算法,尽可能缩小穷举范围,减少穷举次数。有红、黄、绿3种颜色的球,其中红3黄3绿6,现将12个球混放在一个盒子中,从中任意摸出8个球,求解摸出球各种颜色的搭配。并输出有多少种搭配方法。