嵌入式系统软件设计中的数据结构
分類: 图书,计算机/网络,硬件 外部设备 维修,
作者: 陆玲,周航慈 编
出 版 社:
出版时间: 2008-8-1字数: 258000版次: 1页数: 175印刷时间: 2008/08/01开本: 16开印次: 1纸张: 胶版纸I S B N : 9787811243567包装: 平装内容简介
根据嵌入式系统软件设计需要的“数据结构”知识编写而成。书中基本内容有:常用线性数据结构在嵌入式系统中的实现和相关算法;树和图在嵌入式系统中的实现和相关算法;排序和查找算法等。
本书从嵌入式系统的实际硬件环境出发,用通俗易懂的语言代替枯燥难懂的理论解释,结合嵌入式系统的应用实例,使读者在比较轻松的条件下将“数据结构”的基本知识学到手。
本书可作为从事嵌入式系统软件设计的电子技术人员自学“数据结构”的教材,也可供高等院校电子技术类专业本科生、研究生作为教学参考书。
目录
第1章 概述
1.1 数据结构的基本概念
1.1.1 数据和信息
1.1.2 数据元素
1.1.3 数据对象
1.1.4 数据结构
1.2 逻辑结构
1.2.1 线性结构
1.2.2 树形结构
1.2.3 图状或网状结构
1.2.4 纯集合结构
1.3 存储结构
1.3.1 顺序存储
1.3.2 链状存储
1.3.3 索引存储
1.3.4 散列存储
1.4 算法
1.4.1 算法的描述
1.4.2 算法的特征
1.4.3 算法的评价
1.4.4 算法效率的衡量方法
1.4.5 算法的存储空间需求
1.5 嵌入式系统软件中数据结构的特点
第2章 线性表
2.1 线性表的定义
2.1.1 线性表的逻辑结构定义
2.1.2 线性表的运算
2.2 顺序表
2.2.1 顺序表的定义
2.2.2 顺序表上的基本运算
2.3 链表
2.3.1 单链表
2.3.2 循环链表
2.3.3 双链表
2.4 线性表的应用实例
第3章 队列
3.1 队列的定义
3.1.1 队列的逻辑结构定义
3.1.2 队列的基本运算
3.2 循环队列
3.2.1 顺序队列
3.2.2 循环队列的概念
3.2.3 循环队列的运算
3.3 链队列
3.3.1 链队列的定义
3.3.2 链队列的基本运算
3.4 队列的应用实例
第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.3 串的应用实例
第6章 数组
第7章 树与二叉树
第8章 图
第9章 排序
第10章 查找
参考文献
书摘插图
第1章概述
数据结构是一门研究“非数值计算”的程序设计的学科,它主要研究计算机操作对象和它们之间的关系以及操作方法等问题。它讨论的是那些不能用通常的数学分析来解决的、而且也无法用数学公式或方程来描述的问题。例如:图书馆的资料自动检索问题、学生各门课程成绩的排序问题、人机下棋游戏设计问题、两个城市之间多条交通道路选择问题等,这些无法用数学公式解决的实际问题都可使用“数据结构”知识来解决。
1.1数据结构的基本概念
本节对数据结构所涉及的一些概念和术语进行简单的介绍。
1.1.1数据和信息
数据是指能被输入到计算机中并被计算机处理的数值、字符等符号的总称,它是计算机程序加工的“原料”。例如用计算机求解一个线性方程组AX=B时,必须输入矩阵A的值和向量B的值,这里的A与B都是输入数据,这些数据都能被输入到计算机中并被计算机所处理。对于我们常使用的文本编辑程序,例如Windows系统中的记事本,用户可从键盘中输入字母、数字、特殊符号等字符串,并且可以保存这些字符串,这些字符串也是数据。对于图像和声音等都可以将其编码转换成计算机可操作的数据。
信息指的是数据所表示的含义。同一数据在不同的程序中可表示不同的信息,例如:数字数据85,在学生成绩管理程序中可表示学生的分数;在公交管理程序中可表示路程;在图像处理程序中可表示灰度值。而不同形式的数据可以传达同样的信息,例如:英文字符“A”、中文字符“优”、数字5(5分制)都表示学生的成绩为优秀。所以数据是信息的某种特定的符号表示形式,数据所能描述的信息是非常丰富的。
……