三者最大实例分析
来源:互联网 发布:编程常用的算法 编辑:程序博客网 时间:2024/06/06 00:47
很早看过这个视频,但今天要拿出来用时发现已经忘得差不多了。因此在这儿再复习一下。
找出三个数字中最大者
- 输入:三个数值
- 处理:三者最大算法
输出:打印最大值
策略1:通盘比较
- 将每一个值与其他所有值比较以确定最大值
if x1 > x2 and x1 >= x3: max = x1elif x2 >= x1 and x2 >= x3: max = x2else: max = x3
- 如果是五个值比较,表达式包含四个and,比较复杂
每个表达式结果没有被互相利用,效率低(x1与x2比较了两次)
策略2:决策树
决策树方法可以避免冗余比较
但比较值增加时,结构变得非常复杂
if x1>=x2: if x1>=x3: max = x1 else: if x2 >=x3: max = x2 else: max = x3
策略3:顺序处理
逐个扫描每个值,保留最大者
max = x1if x2 > max: max = x2if x3 > max: max = x3
寻找一组数中的最大值
def main(): n = eval(input("How many numbers are there?")) #将第一个值赋给max max = eval(input("Enter a number >> ")) #连续与后面n-1值进行比较 for i in range(n-1): x = eval(input("Enter a number >> ")) if x > max: max = x print("The largest value is", max)main()
0 0
- 三者最大实例分析
- HBase MapReduce实例分析之三
- iPhone企业应用实例分析之三:程序框架分析
- 实例分析SQL中除法的三种写法
- 实例分析SQL中除法的三种写法
- BES 推送应用实例演示与分析(三)
- Linux C 线程同步实例分析(三)
- Android SDK 实例代码分析---Accelerometer Play(三)
- 9、backbone实例todos分析(三)总结
- 9、backbone实例todos分析(三)总结
- Cocos2d-x 实例源码分析之三 ActionTest ( Manual Transformation )
- 【Twitter Storm系列之三】 storm简单实例分析
- Linux I2C设备驱动编写(三)-实例分析AM3359
- 【OpenGL】Shader实例分析(三)- 等待标识
- Linux I2C设备驱动编写(三)-实例分析AM3359
- Linux I2C设备驱动编写(三)-实例分析AM3359
- 【OpenGL】Shader实例分析(三)- 等待标识
- Linux I2C设备驱动编写(三)-实例分析AM3359
- 图片缓存
- DevExpress 从一个XtraGridControl 拖拽行到另外一个
- windows中安装python
- 171. Excel Sheet Column Number LeetCode
- class 和id的区别和联系
- 三者最大实例分析
- 217. Contains Duplicate LeetCode
- copy(浅拷贝-指针拷贝)和mutableCopy(深拷贝-内容拷贝)
- 20160210-2
- 在sublimetxt3中中安装emmet插件
- Laravel (Lumen) 中使用JWT-Auth刷新token的问题
- 1174 区间中最大的数
- nyoj 287(区间覆盖)
- 169. Majority Element LeetCode