算法设计习题课..ppt

枚举法 枚举法适合于解的候选者是有限、可枚举的场合。 枚举法就是对可能是解的众多候选者按某种顺序进行逐一枚举和检验,从中找出符合要求的候选解作为问题的解。 基于枚举法的算法一般都比较直观,容易理解。但由于要检查所有的候选解,因此时间性能较差 枚举法实例 用50元钱买了三种水果:西瓜、苹果和桔子。各种水果加起来一共100个。假如,西瓜5元一个,苹果1元一个,桔子1元3个,设计一算法输出每种水果各买了几个。 约束条件 三种水果一共100个; 买三种水果一共花了50元。 如果西瓜有mellon个,苹果有apple个,桔子有orange个,那么: mellon + apple + orange 等于100 5 * mellon + 1 * apple + orange /3等于50。 直观的枚举 For (mellon = 1, mellon 99; ++ mellon) For (apple = 1, apple 99; ++apple) For (orange = 1; orange 99; orange) If (mellon + apple + orange 等于100 并且 5 * mellon + 1 * apple + orange /3等于50)

文档评论(0)

1亿VIP精品文档

相关文档