第一章数据结构与算法
的控制结构
11算法
通常,计算机可以以执行的基本操作是以指
1.1.1算法:是指解题方案的准确而完整令的形式描述的。一个计算机系统能执行的
的描述。
所有指令的集合,称为计算机系统的指令系
规定了解决某类问题所需的操作语句统。
以及执行顺序使其能通过有限的指令语(1)计算机系统中的基本运算和操作包括:
句,在一定时间内解决问题
算术运算
算法不等于程序,也不等计算机方法,程逻辑运算
ota
dor
序的编制不可能优于算法的设计。
关系运算
算法的基本特征:是一组严谨地定义运算顺数据传输赋值输入与输出
序的规则,每一个规则都是有效的,是(2)算法的控制结构:顺序结构、选择结构、
明确的,此顺序将在有限的次数下终循环结构。
止。
3.算法基本设计方法:
1.算法特征包括:
列举法(列举所有解决方案)
(1)可行性;
归纳法(特殊一般)
(2)确定性,算法中每一步骤都必须有明确递推(已知未知)
定义,不允许有模棱两可的解释,不允递归(逐层分解)
许有多义性;
减半递推
(3)有穷性,算法必须能在有限的时间内做“减半”是指将问题的规模减半,而问题的
完,即能在执行有限的步骤后终止,包性质不为,所谓“递推”是指重复“减半”
括合理的执行时间的含义;
的过程
(4)拥有足够的情报。
回溯法
2.算法的基本要素:
找出一个解决问题的线索,然后沿着这个线
一是对数据对象的运算和操作;二是算法索逐步多次“探、试”
1
f1.1.2算法复杂度
数据结构研究的三个方面:
算法时间复杂度和算法空间复杂度(一个算(1)数据集合中各数据元素之间所固有的逻
法所要付出的代价)是衡理算法好坏的。
辑关系,即数据的逻辑结构;
1.算法时间复杂度
(2)在对数据进行处理时,各数据元素在计
算法时间复杂度是指执行算法所需要的计算算机中的存储关系,即数据的存储结构;
工作量。(既算法的运算次数)
(3)对各种数据结构进行的运算。
含义:算法执行过程中所需要的基本运算次
数
影响计算工作量的主要因素:
一、基本运算次数二、问题与规模
2.算法空间复杂度是指执行这个算法所需要
的内存空间。
一个算法所用的内存空间包括:1、算法程序所占的空间2、输入的初始数据所占的存储空间3、算法执行过程中的额外空间12数据结构的基本基本概念
数据:在计算机科学中指所有能输入到计算机中的并被计算机程序处理的符号的总称
数据元素:数据的基本单位,在计r