算法及算法的描述方法.pptVIP

  • 15
  • 0
  • 约9.27千字
  • 约 37页
  • 2016-11-02 发布于湖北
  • 举报
西安电子科技大学计算机学院 - School of Computer Science Engineering, Xidian University, China * 伪代码描述计算1+2+…+100的算法 算法1:计算1+2+…+100 BEGIN S ← 0; I ← 1; while (I ≤100) do { S ← S + I; I ← I + 1; } print S; END Y N I ← 1 S ← 0 I=100? S← S+I 输出S的值 开始 结束 I ← I+1 西安电子科技大学计算机学院 - School of Computer Science Engineering, Xidian University, China * 伪代码算法:求最大公约数 Y N r不等于0? 输出n的值 输入正整数m和n 开始 结束 m ← n; n ← r r←m被n除的余数 r←m被n除的余数 算法2:辗转相除法求最大公约数 BEGIN input m,n; /*输入正整数m和n*/ r←m mod n; /*求m被n除的余数*/ while (r≠0) do { m ← n; n ← r; r←m mod n; } print n; /*输出最大公约数*/ END 西安电子科技大学计算机学院 - School of Computer Science Engineering, Xidian University, China * 伪代码算法:求最大公约数 算法3:辗转相除法求最大公约数 BEGIN input m,n; /*输入正整数m和n*/ do { r←m mod n; m ← n; n ← r; } while r≠0; print m; /*输出最大公约数*/ END Y N r不等于0? 输出m的值 输入正整数m和n 开始 结束 r←m被n除的余数 m ← n; n ← r 西安电子科技大学计算机学院 - School of Computer Science Engineering, Xidian University, China * 伪代码算法:素性判别 Y N K← 2 K不能整除n? K ← K+1 输出n是素数 输入n的值 开始 结束 Y N K等于n? 算法2:素性判别 BEGIN input n; /*输入正整数n*/ k←2; while (n mod k ≠0) do { k← k+1; } if (k=n) then print “n是素数” else print “n不是素数” END 输出n不是素数 西安电子科技大学计算机学院 - School of Computer Science Engineering, Xidian University, China * 本次课程的内容提要 结构化方法的三种基本结构 顺序结构、选择结构、循环结构 如果一个算法不能分解为若干个基本结构,则不是一个结构化的算法 在计算机软件技术的发展过程中,结构化是一种重要的技术 流程图描述算法时直观形象,易于理解,但是不加限制地使用流线随意转向,可能使算法的逻辑难以理解 N-S盒图克服了流程图表示方法的缺点,能更好地体现结构化思想 伪代码表示算法时比较灵活,也易于修改,通常采用比较接近于计算机程序的符号 流程图、N-S盒图、伪代码都是常用的算法描述方法,必须掌握其中的一种或多种描述方法 西安电子科技大学计算机学院 - School of Computer Science Engineering, Xidian University, China * 下次课的主要内容 自顶向下、逐步求精方法 筛选法求素数 简单排序算法 分治法 西安电子科技大学计算机学院 - School of Computer Science Engineering, Xidian University, China * 作

文档评论(0)

1亿VIP精品文档

相关文档