作品简介

本书系统地介绍了数据结构的基础知识与常用算法设计,按照数据结构的内容组织结构分为三部分,第一部分介绍了数据结构中常用的基本概念,说明了数据结构这门课程讨论的范畴和主要研究的内容;第二部分介绍了常用数据结构的逻辑模型、存储结构和相应算法在计算机中的实现,这些数据结构主要包括线性结构中的线性表、栈、队列、字符串和数组,以及非线性结构中的树和图;第三部分介绍了数据处理过程中常用的两类方法,即数据的查找和排序。本书组织结构清晰、以循序渐进的方式展开。本书配有丰富的案例,旨在帮助读者提高数据组织分析的能力,理解所要加工处理的数据的特征,掌握组织数据、存储数据和处理数据的基本方法,加强在实践应用中选择合适的数据模型和相应算法来解决实际问题的能力。

本书适合作为高职高专类院校计算机软件技术、计算机应用、移动互联网、物联网和网络技术等专业数据结构课程的教材,也适合对数据结构和算法设计感兴趣的相关从业人员阅读参考。

王想实老师具有副教授职称的“双师型”教师,具有17年的教学经验,已经完成超过10届学生的数据结构教学工作。在教学过程中,主持建设《数据结构》校级优质在线开放课程,主编《Android嵌入式开发及实训》教材,主持软件专业实验实训基地建设项。参与省级精品在线开放课程2项;参与高等职业教育骨干专业建设和江苏省国际服务外包人才培训基地建设。指导完成江苏省大学生实践创新训练计划项目2项。科研能力突出,主持完成横向课题6项;服务企业,技术专利转让2项于企业,具有一定的经济效益;完成3项校级课题,其中1项为招标课题;参与江苏省自然科学基金项目等。授权发明专利2项,实用新型专利8项。发表论文10篇以上,其中中文核心3篇,SCI1篇,专业EI会议论文2篇。

作品目录

  • Preface前言
  • 第1章 绪论
  • 1.1 概述
  • 1.1.1 什么是数据结构
  • 1.1.2 数据结构研究内容
  • 1.2 数据的逻辑结构
  • 1.3 数据的存储结构
  • 1.4 算法与算法设计
  • 1.4.1 算法及其设计基本准则
  • 1.4.2 算法描述
  • 1.4.3 算法的度量
  • 本章小结
  • 习题
  • 第2章 线性表
  • 2.1 线性表的定义与基本运算
  • 2.1.1 线性表的定义
  • 2.1.2 线性表的基本运算
  • 2.2 线性表的存储结构和算法实现
  • 2.2.1 线性表的顺序存储结构及其上基本算法实现
  • 2.2.2 线性表的链式存储结构及其上基本算法实现
  • 2.3 案例分析与实现
  • 本章小结
  • 习题
  • 第3章 栈
  • 3.1 栈的定义与基本运算
  • 3.1.1 栈的定义
  • 3.1.2 栈的基本运算
  • 3.2 栈的存储结构及其上算法实现
  • 3.2.1 顺序栈
  • 3.2.2 链栈
  • 3.3 案例分析与实现
  • 本章小结
  • 习题
  • 第4章 队列
  • 4.1 队列的定义与基本运算
  • 4.1.1 队列的定义
  • 4.1.2 队列的基本运算
  • 4.2 队列的存储结构及其上基本算法实现
  • 4.2.1 顺序队列
  • 4.2.2 链队列
  • 4.3 案例分析与实现
  • 本章小结
  • 习题
  • 第5章 字符串和数组
  • 5.1 字符串及其基本运算
  • 5.1.1 字符串的基本概念
  • 5.1.2 字符串的基本运算
  • 5.2 字符串的定长顺序存储结构及其上基本运算
  • 5.2.1 字符串的定长顺序存储结构
  • 5.2.2 模式匹配
  • 5.3 多维数组
  • 5.3.1 数组的逻辑结构
  • 5.3.2 数组的存储结构
  • 5.3.3 特殊矩阵
  • 5.4 案例分析与实现
  • 本章小结
  • 习题
  • 第6章 树和二叉树
  • 6.1 树的定义与常用术语
  • 6.1.1 树的定义
  • 6.1.2 树的常用术语
  • 6.2 二叉树
  • 6.2.1 二叉树的定义和基本形态
  • 6.2.2 二叉树的性质
  • 6.2.3 二叉树的存储结构
  • 6.2.4 遍历二叉树
  • 6.2.5 线索二叉树
  • 6.3 树和森林
  • 6.3.1 树的存储结构
  • 6.3.2 树和森林与二叉树之间的转换
  • 6.4 哈夫曼树及其应用
  • 6.4.1 哈夫曼树的定义
  • 6.4.2 哈夫曼树的构造
  • 6.4.3 哈夫曼编码
  • 6.5 案例分析与实现
  • 本章小结
  • 习题
  • 第7章 图
  • 7.1 图的定义、相关术语与基本运算
  • 7.1.1 图的定义与相关术语
  • 7.1.2 图的基本运算
  • 7.2 图的存储结构
  • 7.2.1 邻接矩阵表示法
  • 7.2.2 邻接链表
  • 7.2.3 邻接多重链表
  • 7.3 图的遍历
  • 7.3.1 图的深度优先遍历
  • 7.3.2 图的广度优先遍历
  • 7.4 图的连通性
  • 7.4.1 无向图的连通性
  • 7.4.2 有向图的连通性
  • 7.4.3 最小生成树
  • 7.5 最短路径
  • 7.6 案例分析与实现
  • 本章小结
  • 习题
  • 第8章 查找
  • 8.1 查找概述
  • 8.2 静态查找
  • 8.2.1 顺序查找
  • 8.2.2 折半查找
  • 8.2.3 索引查找
  • 8.3 动态查找
  • 8.3.1 二叉排序树查找
  • 8.3.2 哈希表查找
  • 8.4 案例分析与实现
  • 本章小结
  • 习题
  • 第9章 排序
  • 9.1 排序概述
  • 9.2 插入排序
  • 9.2.1 直接插入排序
  • 9.2.2 希尔排序
  • 9.3 交换排序
  • 9.3.1 冒泡排序
  • 9.3.2 快速排序
  • 9.4 选择排序
  • 9.4.1 简单选择排序
  • 9.4.2 树形选择排序
  • 9.4.3 堆排序
  • 9.5 归并排序
  • 9.6 基数排序
  • 9.7 案例分析与实现
  • 本章小结
  • 习题
  • 参考文献
展开全部