- 1、本文档共19页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
一、算法的基本结构 1、顺序结构 2、选择结构 3、循环结构 尽管不同的算法千差万别,但它们都是由三种基本的逻辑结构构成的,这三种逻辑结构就是顺序结构、选择结构、循环结构。 1、顺序结构 A B (1)顺序结构是指在一个算法中运算是按照步骤依次执行的,这是一种最简单的算法结构,也是任何一个算法必不可少的逻辑结构。 (2)顺序结构的流程图如图 例1、己知点P(x0,y0)和直线l:Ax+By+C=0,求点P到直线的距离d,设计一个算法,解决这一问题,并画出流程图。 解:算法步骤如下: (1)输入点的坐标x0,y0,输入直线方程的系数A,B和常数C; (2)计算:z1:=Ax0+By0+C; (3)计算:z2:=A2+B2; (5)输出d. 流程图 (4)计算: 开始 输入x0,y0,A,B,C Z1:=Ax0+By0+C Z2:=A2+B2 输出d 结束 流程图如图所示: 程序1 2、选择结构 选择结构的流程图如图 条件 步骤2 步骤1 是 否 计算机执行这种结构的算法,先对条件进行判断,若条件为真,则执行步骤1,若条件为假,则执行步骤2. 例2、试设计一个求一元二次方程ax2+bx+c=0(a≠0) 的根的算法,并画出流程图。 解:算法步骤如下: (1)计算Δ:=b2-4ac; (3)输出解x1,x2或实数解的信息。 流程图 (2)如果Δ0,则原方程无实数解;否则( Δ≥0),令 开始 输入a,b,c 计算Δ:=b2-4ac 输出无实数解 结束 流程图如图所示: Δ0 输出x1,x2 程序2 是 否 3、循环结构 (1)循环结构的概念 (2)循环结构的三要素 (3)循环结构的设计步骤 循环结构是指在算法中从某处开始,按照一定的条件反复执行某一处理步骤的结构。在科学计算中,有许多有规律的复计算,如累加求和、累乘求积等问题。 循环变量,循环体、循环的终止条件。 1)确定循环结构的循环变量和初始条件 2)确定算法中需要反复执行的部分,即循环体; 3)确定循环的终止条件。 4、循环结构的算法流程图 循环量:=初始值 循环体 循环量:=循环变量的后继 循环变量终值 是 否 例3:设计算法,求和1+2+3+┄+100 Sum:=Sum+1 输出Sum 开始 Sum:=0,i:=1 i:=i+1 结束 i100 是 否 程序3 例4:设计算法流程图,求解方程x3+4x-10=0 在区间[0,2]内的解(精确至10-5) 返回 开始 a:=0,b:=1 a:=(a+b)/2 输出(a+b)/2 结束 f((a+b)/2)=0 是 f(a)f((a+b)/2)0 b:=(a+b)/2 否 b-a10-5 否 是 是 否 程序4 1、有序列直接插入排序法 基本过程如下: 假设现在己有按从小到大排列好的n个数,我们要将新数A插入到这个有序列中。 (1)用变量R[i](i=1,2,…,n)表示这n个己排好的数; (2)将A与最后一个数R[n],比较,若A≥R[n],则令R[n+1]:=A,排序完成,若AR[n],则令R[n+1]:=R[n]; (3)将A与R[n-1]比较,若A≥R[n-1],则令R[n]:=A,排序完成,若AR[n-1],则令R[n]:=R[n-1]; (4)不断得复上述过程,即将A与有序列中的每一个数比较,直到出现A≥R[j]或AR[1],则令R[j+1]:=A或R[1]:=A,排序完成。 有序列直接插入排序的算法流程图: 开始 j:=n 结束 j=0 A≥R[j] R[j+1]:=R[j] 否 是 否 是 j:=j-1 R[j+1]:=A 例 5:设计算法,利用直接插入法在有序列{9,13,28,35,72,95}中插入数A,形成新的有序列 开始 j:=6 结束 j=0 A≥R[j] R[j+1]:=R[j] 否 是 否 是 j:=j-1 R[j+1]:=A 程序5 2、冒泡排序法 (1)所谓冒泡排序,形象地说,就是在一组数据按照从小到大的顺序排列时,小的数据视为质量轻,大的数据视为质量沉,五个小的数据就好比水中的气泡,往上方移动,一个较大的数据就好比石头,往 下方移动。最后,最重的会沉到底,最轻的会浮到顶,反复进行,直到将数据排成有序列,这种排序方法形象地称为冒泡排序。 (2)冒泡排序的基本过程被分为若干趟,第一趟排序结束,最大的数据就排在了最后,第二趟排序将每二大的数排在最大数左边相邻的位置上,依次下去,至多经过 n-1趟排序,就可将排序完成。 (3)在每一趟排序中,是从左边第1个数开始,与它右边相邻的数进行比较,若它小于右边的数,则两数位置不动;若它大于或等于右边的数,则将两数的位置交换,一
您可能关注的文档
最近下载
- 《克拉玛依市城市总体规划》(2014-2030年).pdf
- The Blue Planet《蓝色星球(2001)》第一季第三集完整中英文对照剧本.docx VIP
- 新教科版五年级上册科学全册教学反思.doc
- 抗风湿病药物性肝损伤诊治中国专家共识(2024年版)解读.pptx
- GB 50966-2014 电动汽车充电站设计规范.docx
- 国家开放大学《商务英语4》章节自测1-8参考答案.pdf
- 实验九 动物细胞内微丝结构的观察(鬼笔环肽标记法).ppt
- 全国大学生职业规划大赛获奖PPT模板.pptx
- 《机械设计基础(第三版)习题册》参考答案.pdf VIP
- The Blue Planet《蓝色星球(2001)》第一季第四集完整中英文对照剧本.docx VIP
文档评论(0)