数据结构与算法复习与习题解析(第1-5讲)第一讲绪论了解数据结构有关概念的含义,特别是数据的逻辑结构和存储结构之间的关系;(重点)熟悉类C语言的书写规范;了解计算算法时间复杂度的方法
(难点)25/12/242数据结构的定义按某种逻辑关系组织起来的一批数据(或称带结构的数据元素的集合)应用计算机语言并按一定的存储表示方式把它们存储在计算机的存储器中,并在其上定义了一个运算的集合
基本概念和术语【数据】是对信息的一种符号表示
是可以输入计算机中,能被计算机识别处理和输出的一切符号集合
【数据元素】是数据的基本单位,在计算机中通常作为一个整体进行考虑和处理
【数据项】一个数据元素可由若干个数据项组成
是数据不可分割的最小单位
【数据对象】是性质相同的数据元素的集合
是数据的一个子集
25/12/244【数据结构】相互之间存在一种或多种特定关系的数据元素的集合计算机如何解决问题25/12/245问题机外表示处理要求逻辑结构基本运算数学模型存储结构编程实现实现建模求精研究数据结构是为了帮计算机解决问题
数据结构的研究内容25/12/246【数据结构的三个方面研究内容】具体来说,数据结构包含三个方面的内容,即数据的逻辑结构,数据的存储结构和对数据所施加的运算(操作)
数据的逻辑结构(面向人类)数据的存储结构(面向计算机)数据的运算(操作):检索、排序、插入、删除、修改等线性结构非线性结构顺序存储链式存储线性表栈队列树形结构图形结构散列存储索引存储串及数组四种基本逻辑结构25/12/247【集合】——数据元素间除了“同属于一个集合”外,无其他关系
【线性结构】——1对1的关系比如线性表、栈、队列
【树形结构】——1对多的关系比如树
【图形结构】——多对多的关系比如图
算法与数据结构算法与数据结构关系密切选择的数据结构是否恰当直接影响算法的效率;而数据结构