本课程是数据科学与大数据技术的算法理论基础和软件设计的技术基础课, 主要研究信息的逻辑结构及其基本操作在计算机中的表现和实现。课程的任务是学会分析研究计算机加工的数据结构的特性;培养数据抽象的能力;训练学生进行复杂程序设计的技能和培养良好程序设计的习惯;初步掌握算法的时间分析和空间分析的技术。熟练掌握线性表(包括栈和队列)的逻辑结构定义的各种存储结构的描述方法;熟练掌握线性表在顺序存储结构和各种链表结构上的查找、插入和删除的算法;掌握串的类型定义、表示与实现; 掌握数组的两种存储表示方法及地址计算;熟悉特殊矩阵和稀疏矩阵的压缩存储表示方法、下标变换公式及适用范围;掌握树(包括二叉树和森林)的定义、性质;熟练掌握二叉树的结构特性、遍历的算法及若干典型的应用;熟悉图(包括网络)的定义、性质;掌握图的各种存储结构、两种遍历策略及若干典型的应用;掌握顺序表和有序表的查找方法; 掌握排序的定义和各种排序方法的特点;了解各种排序方法的排序过程及相应的时间复杂度分析方法;一般了解排序方法“稳定”的含义。