




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、0 复习复习(fx)与讨论与讨论1)什么)什么(shn me)是链表?是链表? 软件技术 链表是一种组织有序数据的数据结构链表是一种组织有序数据的数据结构 通过指针将一系列数据结点连接成一条数据链通过指针将一系列数据结点连接成一条数据链 结点中只有结点中只有(zhyu)(zhyu)一个指向后继节点的指针为一个指向后继节点的指针为单链表单链表第1页/共32页第一页,共32页。复习复习(fx)与讨论与讨论2)链表有什么)链表有什么(shn me)特点?特点?软件技术 链表比数组具有更好的动态性链表比数组具有更好的动态性 插入、删除操作灵活方便(如文本编辑时)插入、删除操作灵活方便(如文本编辑时)
2、链表中各节点在内存中可以不是连续链表中各节点在内存中可以不是连续(linx)(linx)存放的存放的(数组则一定是连续(数组则一定是连续(linx)(linx)存放的)存放的)第2页/共32页第二页,共32页。复习复习(fx)与讨论与讨论3)怎样)怎样(znyng)建立链表?建立链表?软件技术 使用使用(shyng)(shyng)指向结构体的指针,如:指向结构体的指针,如:struct stu struct stu * *nextnext; 使用使用(shyng)(shyng)结构体作为链表的数据结结构体作为链表的数据结点点 动态开辟内存动态开辟内存 创建新结点创建新结点 连接链条连接链条第3
3、页/共32页第三页,共32页。复习复习(fx)与讨论与讨论4)怎样)怎样(znyng)输出链表?输出链表?软件技术 利用循环利用循环 利用指针利用指针 指向结点指向结点(ji din)(ji din)的数据成员的数据成员第4页/共32页第四页,共32页。复习复习(fx)与讨论与讨论5)怎样)怎样(znyng)建立建立可调数组?可调数组?软件技术 定义指针定义指针(zhzhn)(zhzhn) 开辟内存开辟内存 利用数组与指针利用数组与指针(zhzhn)(zhzhn)之间的关系,得到之间的关系,得到可调数组可调数组第5页/共32页第五页,共32页。1 算法算法(sun f)的概念的概念1)程序的概
4、念)程序的概念 议程:事先议定的步骤议程:事先议定的步骤 程序:特指计算程序:特指计算(j sun)机程序机程序有计划、有步骤地有计划、有步骤地完成某些计算完成某些计算(j sun)或操作或操作(运筹帷幄)(运筹帷幄)软件技术第6页/共32页第六页,共32页。算法算法(sun f)的概念的概念2)算法的概念)算法的概念 软件技术领域:如插入软件技术领域:如插入(ch r)、删除、更新、查找、排序等操作(主要、删除、更新、查找、排序等操作(主要是非数值计算方法)是非数值计算方法) 机械工程领域:常用循环、迭代、数值积分、解方程等数值计算方法机械工程领域:常用循环、迭代、数值积分、解方程等数值计算
5、方法软件技术第7页/共32页第七页,共32页。算法算法(sun f)的概念的概念3)算法的意义)算法的意义计算机的特点计算机的特点 计算机的运算速度计算机的运算速度(sd)很快很快 计算机不会自己解方程计算机不会自己解方程 十几年前美国孩子的评价:十几年前美国孩子的评价:一个孩子说计算机真聪明,能帮我做许多事情一个孩子说计算机真聪明,能帮我做许多事情另一个孩子说计算机真笨,离开了软件什么也不会做!另一个孩子说计算机真笨,离开了软件什么也不会做!软件技术第8页/共32页第八页,共32页。算法算法(sun f)的概念的概念算法的重要性 软件是计算机的灵魂,而算法则是软件的核心 界面固然很重要,但界
6、面终究是外表,不是核心 算法是编程的基础(程序也是算法)机械工程领域的算法问题相对简单如:公式,循环(xnhun),迭代,优化等软件技术第9页/共32页第九页,共32页。算法算法(sun f)的概念的概念算法的特性有穷性(有穷步骤、有穷时间)、确定性(没有二义性,可重复)、可行性(能实现)、输入(零个或多个)、输出(一个或多个)算法设计的要求(yoqi)正确性、可读性、健壮性、效率与低存储量需求算法效率的度量:时间复杂度、空间复杂度软件技术第10页/共32页第十页,共32页。算法算法(sun f)的概念的概念注意保护运算精度(jn d) 如采用列主元高斯消去法 或采用全主元高斯消去法 数值积分
7、时的分点不要过细软件技术第11页/共32页第十一页,共32页。2 循环循环(xnhun)算法算法1)一重循环)一重循环 求求1+2+100=?要点要点(yodin):累加器清零:累加器清零请高手现场编程!请高手现场编程! n!=12(n-1)n=?要点要点(yodin):累乘器置:累乘器置1,大的阶乘整形数会溢出,大的阶乘整形数会溢出请高手现场编程!请高手现场编程!软件技术第12页/共32页第十二页,共32页。循环循环(xnhun)算法算法一重循环求和一重循环求和(qi h)示例示例软件技术第13页/共32页第十三页,共32页。循环循环(xnhun)算法算法2)二重循环)二重循环 矩阵乘法矩阵
8、乘法 输出一个输出一个(y )矩阵矩阵 输出乘法口诀表(用输出乘法口诀表(用springtf和和MessageBox)软件技术第14页/共32页第十四页,共32页。循环循环(xnhun)算法算法输出乘法输出乘法(chngf)口诀表(用口诀表(用springtf和和MessageBox)软件技术void CMyDlg:OnOK() CDialog:OnOK();第15页/共32页第十五页,共32页。循环循环(xnhun)算法算法3)三重循环)三重循环(xnhun)高斯消去法解线性方程组:消去、回代高斯消去法解线性方程组:消去、回代 算例:算例:1.1 x1+1.95 x2+2.38 x3=8.1
9、5,2.4 x1+4.9 x2+9.1 x3=15.4,3.8 x1-3.9 x2-4.5 x3=33.5软件技术第16页/共32页第十六页,共32页。消去消去int XQ(double AA5,int NN,int MM)int N2,ii,jj,kk;double CC;N2=NN+MM;for(kk=1;kk=NN;kk+)CC=1.0/AAkkkk;for(jj=kk;jj=N2;jj+)AAkkjj=AAkkjj*CC;for(ii=kk+1;ii=NN;ii+)if(kk=NN) continue;for(jj=kk+1;jj=N2;jj+)AAiijj=AAiijj-AAiikk
10、*AAkkjj;AAiikk=0;return 0;软件技术第17页/共32页第十七页,共32页。回代回代int HD(double AA5,int NN,int MM)int N2,ii,jj,kk;N2=NN+MM;for(ii=NN+1;ii=1;kk-)for(jj=kk+1;jj=NN;jj+)AAkkii=AAkkii-AAkkjj*AAjjii;AAkkjj=0;return 0;软件技术第18页/共32页第十八页,共32页。调用调用(dioyng)CNumView:CNumView()/ TODO: add construction code heredouble AA55=0
11、,0,0,0,0,0,1.1,1.95,2.38,8.15,0,2.4,4.9,9.1,15.4,0,3.8,-3.9,-4.5,33.5;XQ(AA,3,1);OutArray(A=,AA,3,4);HD(AA,3,1);OutArray(A=,AA,3,4);还缺哪个(n ge)函数?(输出)软件技术主程序主程序子程序子程序2子程序子程序1子程序子程序3子程序子程序4第19页/共32页第十九页,共32页。输出输出(shch)软件技术第20页/共32页第二十页,共32页。3 迭代迭代(di di)算法算法1)确定性方法)确定性方法 如解一元二次方程,解线性方程组的高斯消去法如解一元二次方程,
12、解线性方程组的高斯消去法 经过经过(jnggu)确定的,有限个步骤,能够得到解确定的,有限个步骤,能够得到解软件技术第第1 1步步第第2 2步步第第i i步步第第i+1i+1步步第第n n步步第21页/共32页第二十一页,共32页。迭代迭代(di di)算法算法2)迭代算法)迭代算法 三等分角度问题三等分角度问题(wnt)1/2-1/4+1/8-1/16+1/32-1/64+1/128-1/256+. 函数值计算问题函数值计算问题(wnt)计算器是怎样计算函数值的?用泰勒级数!计算器是怎样计算函数值的?用泰勒级数!如:如:sin(x)=x/1-x3/3!+x5/5!-x7/7!+软件技术第22
13、页/共32页第二十二页,共32页。迭代迭代(di di)算法算法3)赋值语句的特殊性)赋值语句的特殊性 赋值语句不是方程赋值语句不是方程如如 i = i +1; 赋值语句的迭代功能赋值语句的迭代功能(gngnng)有一个时间(或迭代次数)的概念,还是:有一个时间(或迭代次数)的概念,还是:i = i +1;左边的左边的 i 和右边的和右边的 i 不是一个不是一个 i ,迭代次数不同,迭代次数不同软件技术ii+1第23页/共32页第二十三页,共32页。迭代迭代(di di)算法算法4)迭代算法的特点)迭代算法的特点 运算的次数不定,根据精度决定是否停止运算的次数不定,根据精度决定是否停止 结果是
14、一个极限值结果是一个极限值 初始点或中间初始点或中间(zhngjin)误差不影响最终结果的精度误差不影响最终结果的精度软件技术第24页/共32页第二十四页,共32页。迭代迭代(di di)算法算法5)如何构造迭代算法)如何构造迭代算法 找到规律找到规律(gul) 利用循环利用循环 必需收敛必需收敛软件技术第25页/共32页第二十五页,共32页。迭代迭代(di di)算法算法6)猜数游戏)猜数游戏(yux) 框图框图 软件软件软件技术是(Yes)是(Yes)否(No)否(No)是(Yes)否(No)输入猜数区间OnOk参数赋初值计算第一个分点大于分点?区间代换成右半段计算下一个分点区间代换成左半
15、段计算下一个分点区间小于2?区间小于2?区间下限作为答案并输出总提问次数区间上限作为答案并输出总提问次数第26页/共32页第二十六页,共32页。迭代迭代(di di)算法算法7)二分法求根)二分法求根 方程方程y=x3-3x+1 框图框图(kungt) 软件软件软件技术否(No)否(No)否(No)是(Yes)是(Yes)是(Yes)输入区间a,b最大迭代次数M精度Ep,令k=0k=k+1xk=(ak+bk)/2(ak+bk)/2bk-akEpbk-akEp?输出结果xk结束f(ak)f(ak)* *f(xk)f(xk)MkM?输出迭代失败信息第27页/共32页第二十七页,共32页。迭代迭代(
16、di di)算法算法8)迭代法解超越方程)迭代法解超越方程(fngchng) 方程方程(fngchng)I=(M/Km)Ki+I0 软件软件软件技术)III(r011iKe第28页/共32页第二十八页,共32页。迭代迭代(di di)算法算法9)泰勒)泰勒(ti l)级数算例级数算例sin(x)=x/1-x3/3!+x5/5!-x7/7!+void DHK:OnOK() UpdateData(true);wx=m_EDIT1*3.1415926/180.0;ii=ii+2;jc=1;ww=1;fh=-fh;for(jj=1;jj=ii;jj+)jc=jc*jj;ww=ww*wx;m_EDIT2=m_EDIT2+fh*ww/jc;UpdateData(false);软件技术第29页/共32页第二十九页,共32页。迭代迭代(di di)算法算法泰勒泰勒(ti l)级数级数sin(x)=x/1-x3/3!+x5/5
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 农民培训项目实施细则手册
- 企业战略领导力与团队建设作业指导书
- 项目结束阶段总结致辞
- 品牌推广与市场分析指南
- 2024年下半年浙江瓯海城市建设投资集团有限公司招聘总及预备阅读模式笔试参考题库附带答案详解
- 长春2025年吉林长春德惠市“归巢”事业单位人才回引(30人)笔试历年参考题库附带答案详解
- 铜陵2025年安徽铜陵市铜官区事业单位招聘14人笔试历年参考题库附带答案详解
- 通化2025年吉林通化师范学院招聘高级人才49人(1号)笔试历年参考题库附带答案详解
- 衡阳2025年湖南耒阳市卫健系统事业单位引进人才25人笔试历年参考题库附带答案详解
- 苏州2025年江苏苏州高新区教育系统招聘事业编制教师210人笔试历年参考题库附带答案详解
- 02S515排水检查井图集
- 2024山东能源集团中级人才库选拔(高频重点提升专题训练)共500题附带答案详解
- 【实习护生职业认同感及留职意愿现况问卷调查报告(含问卷)5400字(论文)】
- DZ∕T 0272-2015 矿产资源综合利用技术指标及其计算方法(正式版)
- 14J936《变形缝建筑构造》
- 1.1立足时代志存高远课件-高一思想政治《心理健康与职业生涯》(高教版2023基础模块)
- 循环系统-解剖结构
- 光伏发电工程施工主要施工工艺及技术方案
- 校园艾滋病结核病课件
- 语文学习任务群解读
- 2024春苏教版《亮点给力大试卷》数学六年级下册(全册有答案)
评论
0/150
提交评论