一、数据结构的由来
数据结构的产生主要源于计算机科学的发展。在计算机科学的早期阶段,计算机主要处理的数据是数值数据,因此数据存储和处理方式比较简单。
随着计算机科学的发展,越来越多的应用程序需要处理非数值数据,如文本、图像、声音等,因此需要更加复杂和灵活的数据结构来存储和处理这些数据。于是,各种数据结构应运而生,比如树、图、堆、栈、队列等。
二、什么是数据结构
- 数据结构研究计算机数据间的关系
- 包括数据的逻辑结构和存储结构及其操作
1、数据(Data)
数据即信息的载体,是能够输入到计算机并且能被计算机识别、存储和处理的符号总称
2、数据元素(Data Element)
数据元素是数据的基本单位,又称之为记录。一般,数据元素由若干个基本项(或称字段、域、属性)组成。
三、数据的逻辑结构
1、集合——数据元素间除同属于一个集合外,无其他关系
2、线性结构——一个对一个,如线性表、栈、队列
3、树状结构——一个对多个,如树
4、图装结构——多个对多个,如图
四、数据的存储结构
存储结构:逻辑结构在计算机中实现方法。
存储结构是通过计算机语言所编制的程序来实现的,因而是依赖于具体的计算机语言的。
1、顺序存储:
将数据结构中各个元素按照其逻辑顺序存放于一片连续的的存储空间中
如c语言的一维数组,如表的顺序结构
2、链式存储 :
将数据结构中各元素分布到存储器的不同点,用地址(或链指针)方式建立它们之间的联系
数据结构中元素之间的关系在计算机内部有很大程度上通过地址或指针来建立的。
3、索引存储 :
在存储数据的同时,建立一个附加索引表,即索引存储结构=数据文件+索引表。
4、散列结构:
根据数据元素的特殊字段(称位关键字key),计算数据元素的存放地址,然后数据元素按地址存放 。
基本概念