1.2算法和复杂度
- 格式:ppt
- 大小:510.50 KB
- 文档页数:24


第一章数据结构与算法1.1 算法1.1.1算法:是指解题方案的准确而完整的描述。
规定了解决某类问题所需的操作语句以及执行顺序使其能通过有限的指令语句,在一定时间内解决问题算法不等于程序,也不等计算机方法,程序的编制不可能优于算法的设计。
算法的基本特征:是一组严谨地定义运算顺序的规则,每一个规则都是有效的,是明确的,此顺序将在有限的次数下终止。
1.算法特征包括:(1)可行性;(2)确定性,算法中每一步骤都必须有明确定义,不允许有模棱两可的解释,不允许有多义性;(3)有穷性,算法必须能在有限的时间内做完,即能在执行有限的步骤后终止,包括合理的执行时间的含义;(4)拥有足够的情报。
2.算法的基本要素:一是对数据对象的运算和操作;二是算法的控制结构通常,计算机可以以执行的基本操作是以指令的形式描述的。
一个计算机系统能执行的所有指令的集合,称为计算机系统的指令系统。
(1)计算机系统中的基本运算和操作包括:算术运算+ - * /逻辑运算not and or关系运算< > ! =数据传输赋值输入与输出(2)算法的控制结构:顺序结构、选择结构、循环结构。
3.算法基本设计方法:列举法(列举所有解决方案)归纳法(特殊→一般)递推(已知→未知)递归(逐层分解)减半递推“减半”是指将问题的规模减半,而问题的性质不为,所谓“递推”是指重复“减半”的过程回溯法找出一个解决问题的线索,然后沿着这个线索逐步多次“探、试”1.1.2算法复杂度算法时间复杂度和算法空间复杂度(一个算法所要付出的代价)是衡理算法好坏的。
1.算法时间复杂度算法时间复杂度是指执行算法所需要的计算工作量。
(既算法的运算次数)含义:算法执行过程中所需要的基本运算次数影响计算工作量的主要因素:一、基本运算次数二、问题与规模2.算法空间复杂度是指执行这个算法所需要的内存空间。
一个算法所用的内存空间包括:1、算法程序所占的空间2、输入的初始数据所占的存储空间3、算法执行过程中的额外空间1.2 数据结构的基本基本概念数据:在计算机科学中指所有能输入到计算机中的并被计算机程序处理的符号的总称数据元素:数据的基本单位,在计算机程序中通常作为一个整体进行考虑和处理。
《计算机算法基础》教学大纲计算机算法基础教学大纲课程简介本课程作为计算机科学与技术专业必修课,旨在让学生掌握计算机算法的基础知识和基本应用,为后续深入研究算法提供基础。
教学目标通过本课程的研究,学生将能够:- 熟练掌握常用的计算机算法- 理解各种算法的基本思想和运行原理- 能够运用算法进行简单的问题求解和程序设计- 培养编写高效算法的能力教学内容第一章算法基础1.1 算法的定义和特性1.2 算法的分类1.3 时间复杂度和空间复杂度第二章常用算法2.1 排序算法(冒泡排序、快速排序、归并排序)2.2 查找算法(顺序查找、折半查找、哈希查找)2.3 图算法(最短路径算法、最小生成树算法)第三章算法应用3.1 算法在智能搜索、机器研究等领域的应用3.2 算法在计算机游戏、网络安全等领域的应用3.3 算法在大数据处理中的应用教学方法本课程采用讲授和实践相结合的教学方法。
教师将通过课堂讲解、板书演示、案例分析等方式向学生介绍算法基础原理和应用技巧,并通过实例编程和练巩固学生的实际应用能力。
考核方式本课程考核方式包括课堂作业、实验报告、期中考试和期末考试。
其中,期中考试占30%的成绩,期末考试占50%的成绩,课堂作业和实验报告占20%的成绩。
教材与参考书目教材《数据结构与算法分析》,作者:Mark Allen Weiss,出版社:机械工业出版社参考书目《算法导论》,作者:Thomas H. Cormen,出版社:机械工业出版社《算法设计与分析基础》,作者:Sun Limin,出版社:高等教育出版社实验环境本课程实验环境为Windows操作系统,使用Java语言进行编程实现。
教学进度。