软件技术07算法3.pptVIP

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

机械工程软件技术基础 0 复习与讨论 复习与讨论 复习与讨论 复习与讨论 1 非数值算法 2 排序算法 3 冒泡法排序 冒泡法排序 冒泡法排序 冒泡法排序 冒泡法排序 冒泡法排序 4 作业 * 第七讲 算法3 太原科技大学 陶元芳 2010.8 1)数值算法的意义 软件技术 ▲ 算法是编程的基础 ▲ 解数学模型用 ▲ 机械工程领域应用较多 (按部就班地解决某种问题的方法和步骤。程序也是算法。) 2)数值积分及方法 软件技术 ▲ 积“积不出”的函数 ▲ 微分方程数值解 ▲ 计算机仿真模拟 ▲ 用求和代替积分 ▲ 矩形、梯形、抛物线法等 3)保护运算精度 软件技术 ▲ 用主元消去法 ▲ 避免“下溢出” ▲ 避免相近的值相减 ▲ 避免除以绝对值小的数 ▲ 避免“0/0”型的计算 (避免奇异点,如机构中的死点) 4)解一元二次方程 软件技术 ▲ 设计框图 ▲ 解决输入/输出问题 ▲ 处理异常情况 ▲ 解决虚根问题 ▲ 保护根的有效数字 1)定义   许多对数据的操作,如插入、删除、更新、查找、排序等,并不是解方程类型的计算,这些操作的方法称为非数值算法。   软件技术、数据结构中所称的算法,往往是指非数值算法。 软件技术 1)意义   排序是查找的基础,无序的数据查找很慢。   排序的方法有许多种,如: ▲ 插入排序; ▲ 冒泡排序; ▲ 选择排序等。   冒泡法是众多排序方法中的一种。 (冒泡法、气泡浮起法、起泡法) 软件技术 1)原理   首先将第1个数和第2个数进行比较,若第1个数比第2个数大,则交换。依次类推,直到进行第n-1个数和第n个数的比较。称为第1趟起泡排序。结果是最大的数被放到了最后。   经过n-1轮后排序完成。 软件技术 2)算例 “头重脚轻”,就交换 软件技术 3)“一趟”的框图 软件技术 否(No) 是(Yes) a[j]a[j+1]? temp=a[j] a[j]=a[j+1] a[j+1]=temp jn-1? j=1 j=j+1 是(Yes) 否(No) 4)程序 void SortNum(double aa[], int Num) // 数组,个数 { double temp; // 临时变量 for(int ii=0;iiNum-1;ii++) // Num-1次 for(int jj=0;jjNum-1-ii;jj++) // Num-1-ii次 if(aa[jj]aa[jj+1]) // 比较,大则换 { temp=aa[jj]; aa[jj]=aa[jj+1]; aa[jj+1]=temp; } } 软件技术 程序(输出函数,可以不用类) 软件技术 程序(调用,可以不用类) 软件技术 * * * * *

文档评论(0)

xinshengwencai + 关注
实名认证
文档贡献者

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

版权声明书
用户编号:5311233133000002

1亿VIP精品文档

相关文档