首页编程数据结构教程,求数据结构视频教程

数据结构教程,求数据结构视频教程

编程之家2023-11-04154次浏览

亲爱的读者们,你是否对数据结构教程和求数据结构视频教程的关系感到好奇?在本文中,我将深入探讨它们之间的联系,让你对此有更深刻的理解。

数据结构教程,求数据结构视频教程

数据结构教程第二课抽象数据类型的表示与实现

本课主题:抽象数据类型的表示与实现

教学目的:了解抽象数据类型的定义、表示和实现方法

教学重点:抽象数据类型表示法、类C语言语法

数据结构教程,求数据结构视频教程

教学难点:抽象数据类型表示法

授课内容:

一、抽象数据类型定义(ADT)

数据结构教程,求数据结构视频教程

作用:抽象数据类型可以使我们更容易描述现实世界。例:用线性表描述学生成绩表,用树或图描述遗传关系。

定义:一个数学模型以及定义在该模型上的一组操作。

关键:使用它的人可以只关心它的逻辑特征,不需要了解它的存储方式。定义它的人同样不必要关心它如何存储。

例:线性表这样的抽象数据类型,其数学模型是:数据元素的集合,该集合内的元素有这样的关系:除第一个和最后一个外,每个元素有的前趋和的后继。可以有这样一些操作:插入一个元素、删除一个元素等。

抽象数据类型分类

原子类型值不可分解,如int

固定聚合类型值由确定数目的成分按某种结构组成,如复数

可变聚合类型值的成分数目不确定如学生基本情况

抽象数据类型表示法:

一、

三元组表示:(D,S,P)

其中D是数据对象,S是D上的关系集,P是对D的基本操作集。

二、书中的定义格式:

ADT抽象数据类型名{

数据对象:数据对象的定义>

数据关系:数据关系的定义>

基本操作:基本操作的定义>

}ADT抽象数据类型名

例:线性表的表示

名称线性表

数据对象 D={ai| ai(-ElemSet,i=1,2,...,n,n>=0}任意数据元素的集合

数据关系 R1={| ai-1,ai(- D,i=2,...,n}除第一个和最后一个外,每个元素有的直接前趋和的直接后继

基本操作 ListInsert(&L,i,e) L为线性表,i为位置,e为数据元素。

二、类C语言语法

类C语言语法示例

1、预定义常量和类型#define TRUE 1

#define FALSE 0

#define OK 1

#define ERROR 0

#define INFEASIBLE-1

#define OVERFLOW-2

typedef in Status;//Status是函数的类型,其值是函数结果状态代码。

2、数据结构的存储结构 typedef ElemType first;

3、基本操作的算法函数类型函数名(函数参数表){

//算法说明

语句序列

}//函数名

4、赋值语句简单赋值:变量名=表达式;

串联赋值:变量名1=变量名2=...=变量名k=表达式;

成组赋值:(变量名1,...,变量名k)=(表达式1,...,表达式k);

结构名=结构名;

结构名=(值1,...,值k);

变量名[]=表达式;

变量名[起始下标..终止下标]=变量名[起始下标..终止下标];

交换赋值:变量名变量名;

条件赋值:变量名=条件表达式?表达式?表达式T:表达式F

5、选择语句 1、if(表达式)语句;

2、if(表达式)语句;

else语句;

3、switch(表达式){

case值1:语句序列1;break;

...

case值n:语句序列n;break;

default:语句序列n+1;break;

}

4、switch{

case条件1:语句序列1;break;

...

case条件n:语句序列n;break;

default:语句序列n+1;break;

}

6、循环语句 for(赋初值表达式;条件;修改表达式序列)语句;

while(条件)语句;

do{语句序列}while(条件);

7、结束语句 return [表达式];

return;//函数结束语句

break;//case结束语句

exit(异常代码);//异常结束语句

8、输入和输出语句 scanf([格式串],变量1,...,变量n);

9、注释//文字序列

10、基本函数 max(表达式1,...,表达式n)

min,abs,floor,ceil,eof,eoln

11、逻辑运算&&与运算;||或运算

例:线性表的实现:

ADT List{

数据对象: D={ai| ai(-ElemSet,i=1,2,...,n,n>=0}

数据关系: R1={| ai-1,ai(- D,i=2,...,n}

基本操作:

InitList(&L)

DestroyList(&L)

ListInsert(&L,i,e)

ListDelete(&L,i,&e)

}ADT List

ListInsert(List&L,int i,ElemType e)

{if(iL.length+) return ERROR;

q=&(L.elem[i-1]);

for(p=&(L.elem[L.length-1]);p>=q;--p)*(p+1)=*p;

*q=e;

++L.length;

return OK;

}

数据结构教程的目录

1.1数据结构和算法

1.2数据的逻辑结构和存储结构

1.3算法和算法分析 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.4线性表的链式存储实现

2.4.1单链表——线性表的链式存储表示

2.4.2单链表的插入、删除与查找

2.4.3关于单链表实现的注记

2.5应用——多项式相加(链式存储实现)

2.5.1多项式的链式存储表示

2.5.2多项式的相加 3.1栈

3.1.1栈的概念

3.1.2栈的基本运算

3.2栈的顺序存储实现

3.2.1顺序栈——栈的顺序存储表示

3.2.2基本运算的实现

3.3栈的应用——算术表达式的求值

3.3.1表达式求值与运算符的优先数

3.3.2表达式的中缀表示与后缀表示

3.3.3表达式求值的算法实现

3.4栈的链式存储实现及其应用

3.4.1链接栈——栈的链式存储表示

3.4.2基本运算的实现

3.4.3链接栈的应用——可用空间栈

3.5队列

3.5.1队列的概念

3.5.2队列的基本运算

3.6队列的实现

3.6.1顺序队列——队列的顺序存储实现

3.6.2循环(顺序)队列——队列的另一种顺序存储实现

3.6.3链接队列——队列的链式存储实现

3.7队列的应用——医院门诊部病人管理系统

3.7.1病人管理系统及所需数据结构

3.7.2病人管理系统的实现 4.1带头结点的链表

4.1.1 LWH——带头结点的链表(List With Header node)

4.1.2 LWH的基本运算

4.1.3头结点的其它应用和设计

4.2环形链表

4.2.1 CL——环形链表(Circular linked List)

4.2.2 CL的基本运算

4.2.3 CL的应用

4.3双链表

4.3.1 DL——双链表(Double—Iinked List)

4.3.2 DL的基本运算

4.3.3 DL的应用——简单行编辑器的设计与实现

4.4字符串

4.4.1串的基本概念

4.4.2串的基本运算

4.4.3串的存储实现

4.5特殊矩阵

4.5.1对称矩阵

4.5.2三角矩阵

4.5.3稀疏矩阵 5.1引言

5.2插入排序

5.2.1直接插入排序

5.2.2折半插入排序

5.2.3 Shell排序

5.3选择排序

5.3.1直接选择排序

5.3.2堆排序

5.4交换排序

5.4.1冒泡排序

5.4.2快速排序

5.5归并排序

5.6分配排序 6.1树的基本概念

6.2树的存储结构

6.3树的遍历

6.4树的线性表示

6.5二叉树

6.5.1满二叉树和完全二叉树

6.5.2树转换成相应二叉树

6.6二叉树的遍历

6.7二叉树的顺序存储

6.7.1完全二叉树的顺序存储

6.7.2按前序的存储形式

6.8穿线二叉树

6.8.1穿线二叉树的操作

6.8.2穿线排序 7.1图的概念

7.2图的存储结构

7.2.1邻接矩阵

7.2.2邻接表

7.2.3邻接多重表

7.3图的遍历和图的连通分量

7.3.1深度优先搜索法

7.3.2广度优先搜索法

7.3.3图的连通分量

7.4生成树和最小生成树

7.5最短路径

7.5.1从一个源点到其它各顶点的最短路径

7.5.2每一对顶点之间的最短路径

7.6拓扑排序 8.1基本概念

8.2线性表的检索

8.2.1顺序检索法

8.2.2二分检索法

8.2.3分页块检索

8.3二叉排序树

8.4丰满树和平衡树

8.4.1丰满树

8.4.2平衡二叉排序树

8.5最佳二叉排序树和Huffman树

8.5.1扩充二叉树

8.5.2最佳二叉排序树

8.5.3 Huffman树

8.6散列表(Hash)检索

8.6.1散列函数

8.6.2处理冲突的方法 9.1文件的基本概念

9.2外存储器简介

9.2.1磁带

9.2.2磁盘

9.2.3分页块存储法

9.3文件组织概述

9.3.1文件的逻辑结构

9.3.2文件的存储结构

9.3.3文件上的操作 10.1外排序概述

10.2磁盘排序

10.2.1多路合并

10.2.2初始顺串的生成

10.3磁带排序

10.3.1平衡合并排序

10.3.2多阶段合并排序

参考文献

……

求数据结构视频教程

软件工程系的数据结构视频教材!值得收藏

吉林大学的数据结构教程!

下载科建CSF播放器(http://support.collegesoft.com.cn/product/install/scenicplayer/XPR1262440.exe)

另外由于本教材加了密!必须解密才可以正常播放!

具体的破解步骤:

1.用UltraEdit打开文本编辑器

2.Load->File->选择其中一个CSF文件

3.将header处第7个BYTE"06"改成"04"

4.保存

视频下载地址(必须用迅雷下,由于下载速度很慢!请耐心等待)

http://tod.pyzjzx.cn/csmedia/计算机科学与技术/数据结构/第01讲.csf

http://tod.pyzjzx.cn/csmedia/计算机科学与技术/数据结构/第02讲.csf

http://tod.pyzjzx.cn/csmedia/计算机科学与技术/数据结构/第03讲.csf

......................

中间自己加

.....................

http://tod.pyzjzx.cn/csmedia/计算机科学与技术/数据结构/第64讲.csf

希望能给你帮助!

数据结构教程的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于求数据结构视频教程、数据结构教程的信息别忘了在本站进行查找哦。

标签云,什么是标签云永久免费空间,注册百度网盘并领取2T永久免费空间