数据结构 (一)试水篇

绪论

1.1 数据结构的目的

数据结构作为计算机科学的一门分支科学,主要研究非数值计算的程序设计问题中计算机的操作对象、对象之间的关系和操作等。

数据结构的三要素为数据的逻辑结构、数据的存储结构以及数据的操作。

有一个著名的公式:程序=数据结构+算法

1.2 数据结构的基本概念

数据:所有能输入到计算机中的去描述客观事务的符号
数据项:有独立含义的数据的最小单位 (描述事物的其中一项指标)                 --成员
数据元素:数据的基本单位,也称为节点或记录(用于描述一个完整的事物)   --结构体
数据结构:数据元素+数据之间的关系组成的集合
算法:狭义 数据结构具有的功能    广义 算法是解决问题的方法

1.3 数据结构的三个方面:

     1.数据的逻辑结构
     2.数据的存储结构
     3.数据结构的运算

1.3.1 四种基本的逻辑结构:

集合结构:数据元素之间同属一个集体外,没有其他关系
线性结构:数据元素之间存在一对一关系 
               例如: 数组、链表、功能受限的表(栈、队列)
树形结构:数据元素之间存在一对多关系
               例如:普通树、二叉树、完全二叉树、满二叉树、有序二叉树
图形结构:数据元素之间存在多对多关系
               例如:图的邻接表表示、图的邻接矩阵表示 

1.3.2 数据结构的存储方式(物理结构)

1.顺序结构  (在一块连续的内存空间上存储元素、元素之间的关系)
        数据存在在一段连续的空间,用数据元素在存储器的位置来表示数据元素的关系
        优点:随机访问,访问效率极高(速度快),不易产生内存碎片
        缺点:空间利用率低,对内存的要求高(必须是整块的内存),元素的添加和删除不方便

2.链式结构  (非顺序) 元素随机存储在内存空间中,元素中存储指向其他元素的地址
        结构的每个数据元素存储在彼此独立的内存中,每个元素中增加一个或多个数据项用来存放另一个元素的地址,表示元素之间的关系
        优点:插入,删除元素方便 ,空间利用率高, 对内存要求低
        缺点:只能逐个遍历,不能随机访问, 查询效率低(速度慢),容易产生内存碎片

逻辑结构和存储结构的关系
表:顺序/链式
树:顺序/链式
图:混合

注意:每一种逻辑结构采用什么物理结构实现,没有明确规定,通常根据实现的难易程度,以及在时间和空间复杂度的要求,再选择合适的物理结构,也有可能是顺序和链式混合存储

1.3.3 数据结构的运算:

1.创建
2.销毁
3.添加元素
4.删除元素
5.修改元素
6.查找元素
7.排序
8.遍历
9.访问

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值