还剩2页未读,继续阅读
文本内容:
数据结构(计算机存储、组织数据方式)数据结构是计算机存储、组织数据的方式数据结构是指相互之间存在一种或多种特定关系的数据元素的集合通常情况下,精心选择的数据结构可以带来更高的运行或者存储效率数据结构往往同高效的检索算法和索引技术有关⑴数据结构计算机存储、组织数据的方式特定关系的数据元素的集合检索算法和索引技术目录定义
1.
12.•名词定义
3.•其它定义研究对象
4.2重要意义
5.3研究内容
6.4结构分类
1.5结构算法
2.6常用结构
3.
74.•数组■栈
5.
6.IOO
1.«
2.W,图
3.堆
4.
5.・散列表定义名词定义・数据结构是指
[2]其它定义在他的《数据结构、算法与应用》一书中称“数据结构是数据对象,以及存在于该对象的实例和组成实例的数据元素之间的各种联系这些联系可以通过定义相关的函数来给出”他将定义为“一个数据对象是或的集合”data object在《数据结构与算法分析》一书中的定义是:“数据结构是抽象数据类型Abstract Data的物理实现”Type在《数据结构与程序设计》一书中,将一个数据结构的设计过程分成抽象层、数据结构层和实现层其中,抽象层是指抽象数据类型层,它讨论数据的逻辑结构及其运算,数据结构层和实现层讨论一个数据结构的表示和在计算机内的存储细节以及运算的实现数据结构具体指同一类数据元素中,各元素之间的相互关系,包括三个组成成分,数据的逻辑结构,数据的存储结构和数据运算结构研究对象:指反映数据元素之间的逻辑关系的数据结构,其中的逻辑关系是指数据元素之间的前后件关系,而与他们在计算机中的存储位置无关逻辑结构包括集合
1.数据结构中的元素之间除了“同属一个集合”的相互关系外,别无其他关系;.线性结构2数据结构中的元素存在一对一的相互关系;.树形结构3数据结构中的元素存在一对多的相互关系;.图形结构4数据结构中的元素存在多对多的相互关系指数据的逻辑结构在计算机存储空间的存放形式⑴数据的物理结构是数据结构在计算机中的表示又称映像,它包括数据元素的机内表示和关系的机内表示由于具体实现的方法有顺序、链接、索引、散列等多种,所以,一种数据结构可表示成一种或多种存储结构数据元素的机内表示映像方法用二进制位的位串表示数据元素通常称这种位串bit为节点当数据元素有若干个数据项组成时,位串中与个数据项对应的子位串称为数据node o域因此,节点是数据元素的机内表示或机内映像datafieldo关系的机内表示映像方法数据元素之间的关系的机内表示可以分为顺序映像和非顺序映像,常用两种存储结构顺序存储结构和链式存储结构顺序映像借助元素在存储器中的相对位置来表示数据元素之间的逻辑关系非顺序映像借助指示元素存储位置的指针pointer来表示数据元素之间的逻辑关系【o a重要意义一般认为,一个数据结构是由数据元素依据某种逻辑联系组织起来的对数据元素间逻辑关系的描述称为数据的逻辑结构;数据必须在计算机内存储,数据的存储结构是数据结构的实现形式,是其在计算机内的表示;此外讨论一个数据结构必须同时讨论在该类数据上执行的运算才有意义一个逻辑数据结构可以有多种存储结构,且各种存储结构影响数据处理的效率在许多类型的程序的设计中,数据结构的选择是一个基本的设计考虑因素许多大型系统的构造经验表明,系统实现的困难程度和系统构造的质量都严重的依赖于是否选择了最优的数据结构许多时候,确定了数据结构后,算法就容易得到了有些时候事情也会反过来,我们根据特定算法来选择数据结构与之适应不论哪种情况,选择合适的数据结构都是非常重要的选择了数据结构,算法也随之确定,是数据而不是算法是系统构造的关键因素这种洞见导致了许多种软件设计方法和程序设计语言的出现,面向对象的程序设计语言就是其中之一研究内容在计算机科学中,数据结构是一门研究非数值计算的程序设计问题中计算机的操作对象(数据元素)以及它们之间的关系和运算等的学科,而且确保经过这些运算后所得到的新结构仍然是原来的结构类型“数据结构”作为一门独立的课程在国外是从年才开始设立的年美国唐纳19681968德•克努特()教授开创了数据结构的最初体系,他所著的《计算机程序设Donald ErvinKnuth计艺术》第一卷《基本算法》是第一本较系统地阐述数据的逻辑结构和存储结构及其操作的著作“数据结构”在计算机科学中是一门综合性的专业基础课,数据结构是介于数学、计算机硬件和计算机软件三者之间的一门核心课程数据结构这一门课的内容不仅是一般程序设计(特别是非数值性程序设计)的基础,而且是设计和实现编译程序、操作系统、数据库系统及其他系统程序的重要基础计算机科学是一门研究用计算机进行信息表示和处理的科学这里面涉及到两个问题信息的表示,信息的处理而信息的表示和组织又直接关系到处理信息的程序的效率随着计算机的普及,信息量的增加,信息范围的拓宽,使许多系统程序和应用程序的规模很大,结构又相当复杂因此,为了编写出一个“好”的程序,必须分析待处理的对象的特征及各对象之间存在的关系,这就是数据结构这门课所要研究的问题众所周知,计算机的程序是对信息进行加工处理在大多数情况下,这些信息并不是没有组织,信息(数据)之间往往具有重要的结构关系,这就是数据结构的内容数据的结构,直接影响算法的选择和效率计算机解决一个具体问题时,大致需要经过下列几个步骤首先要从具体问题中抽象出一个适当的数学模型,然后设计一个解此数学模型的篁法()最后编出程序、进行测Algorithm,试、调整直至得到最终解答寻求数学模型的实质是分析问题,从中提取操作的对象,并找出这些操作对象之间含有的关系,然后用数学的语言加以描述当人们用计算机处理数值计算问题是,所用的数学模型是用数学方程描述所涉及的运算对象一般是简单的整形、实型和逻辑型数据,因此程序设计者的主要精力集中于程序设计技巧上,而不是数据的存储和组织上然而,计算机应用的更多领域是‘非数值型计算问题”,它们的数学模型无法用数学方程描述,而是。
个人认证
优秀文档
获得点赞 0