AutoCAD 3DMAX C语言 Pro/E UG JAVA编程 PHP编程 Maya动画 Matlab应用 Android
Photoshop Word Excel flash VB编程 VC编程 Coreldraw SolidWorks A Designer Unity3D
 首页 > 数据结构

数据结构教程 第四十课 总复习

51自学网 http://www.51zixue.net

教学目的: 数据结构综述

教学重点: 数据结构课程的核心

教学难点: 理解概念

授课内容:

一、学习数据结构的意义

设想一下,你决定向一个公司投资,而你对某个公司的了解只限于该公司的一条生产线每分钟可生产2000件产品,你会作出投资的决定吗?如果你是一个公司的管理者,这个公司日常的每笔交易的详细情况对你来讲的确重要,但如果你把时间花在这些数据上面,你就无法站在宏观的高度上把握公司的经营方向。

不管是经营一个公司,还是管理一个国家,对描述事物特征的数据必须加以分析与加工,现实事物是普遍联系的,描述这些事物属性及特征的数据之间也是普遍联系的,把这些数据之间的关系进行总结,得到集合、线性、树、图这四种基本关系,由此得到四类基本数据结构。而每种结构类型的数据,相同的操作(如遍历、查找等)需要采用不同的方法(算法),不同结构类型可进行的操作也有区别。通过应用这些算法,可得到事物的总体抽象特征。如:一个公司的年产值,年利润总额,利润率等。

反过来,为了描述一个复杂的事物,必须分析它的组成部分,既要描述每个部分的特征,又要描述各个部分之间的关系,如此细分下去,便于最终用计算机进行处理,而计算机的基本数据类型不适合描述复杂的结构,且仅用基本数据类型也不便于人的理解与记忆,所以使用介于两者之间的抽象数据类型成了计算机语言描述现实事物的纽带。人可以方便的把事物用抽象数据类型描述,也可以方便的把抽象数据类型用基本数据类型来实现,为用计算机处理现实问题提供了解决方法。

二、数据结构的学习重点

如何描述一种新的抽象数据类型?

如何分析算法的优劣?

线性表的主要特征。

线性表的存储表示(顺序表示、单向链表、循环链表、双向链表)

特殊的线性表:栈、队列、串

二叉树的定义、性质、存储结构、遍历算法

图的定义、术语、存储结构

静态查找表、二叉排序树、哈希函数的构造及冲突处理方法。

插入排序、快速排序、选择排序

 

 

 
上一篇:数据结构教程 第三十九课 索引文件  下一篇:JAVA编写的拼图游戏移动算法,简单易懂