穿越到修仙界,筑基功法居然是数据结构(1)——数据结构基本概念

前言

标题不是胡说八道,编程就像修仙,数据结构就是无上功法入门篇,只要学好了数据结构,未来穿越到修仙界也能快人一步,直接成为筑基强者。实际就是胡说八道。

本系列目标是以最简单的方式讲述数据结构,并着重于其在应用开发中的使用,欢迎大家阅读和评论,共同进步~~

这是第一章,介绍数据结构的基本概念。

什么是数据结构

在这里插入图片描述
不考虑复杂概念,可直接类比理解:

  1. 数据项‌是不可分割的最小单位,类似于表格中的一,它包含了数据的具体属性或特征,如姓名、年龄等。
  2. 数据元素‌则是由若干个数据项组成的基本单位,类似于表格中的一行记录,它包含了完整的信息,如一个人的全部信息。
  3. 数据对象‌是性质相同的数据元素的集合,可以理解为具有相同结构的多个记录的集合,类似于数据库中的一张,包含了多个记录(数据元素)。
  4. 数据结构是指相互之间存在一种或多种特定关系的数据元素的集合,和数据对象一样也是数据元素的集合,但是数据结构关注的是数据元素间的组织方式和操作方式(运算),而数据对象更关注数据类型。

就像食堂排队打饭,数据结构关注的是这些人是横着排竖着排还是交叉排,怎么从一列变成两列,而数据对象关注的是这些人是谁,他们喜欢吃什么。

数据结构包含哪些内容

逻辑结构

数据元素之间的逻辑关系,它描述了数据元素之间的组织方式,与数据的存储无关。

  1. 集合结构:数据元素间没有关系(既然已经是数据结构了,那必然是数据元素的集合,只是元素之间没有其他关系)
    在这里插入图片描述

  2. 线性结构:数据元素间是一对一关系
    在这里插入图片描述

  3. 树状结构:数据元素间是一对多的层级关系
    在这里插入图片描述

  4. 网状结构(图结构):数据元素间是多对多关系
    在这里插入图片描述

存储结构(物理结构)

数据结构在计算机中的表示方式,它描述了数据元素在计算机存储器中的表示和存储方式。

  1. 顺序结构:所有元素存放在一片连续的存储单元中,逻辑上相邻的元素在物理位置也相邻,适用于需要顺序访问元素的情况。
  2. 链表结构:不要求逻辑上相邻的元素在物理位置相邻,元素间的逻辑关系通过附设的指针来表示,适用于需要频繁插入和删除元素的情况。
  3. 索引结构:建立索引表,每个数据元素占用表中的一项,表项通常包含关键字和地址指针,适用于需要快速查找元素的情况。‌
  4. 散列结构:通过构造相应的散列函数,由散列函数的值来确定元素存放的地址,适用于需要快速查找和插入元素的情况。

留一笔,未来可能补图

运算

对数据元素可以进行的操作和算法,如插入、删除、查找、排序、遍历等

九大结构

下一章开始讲九大结构,毕竟炼气有9层,炼完才能筑基。但是这里还是有必要提一下:

  1. 九大结构主要侧重于描述数据元素间的逻辑关系,所以主要属于逻辑结构范畴
  2. 同时同样的逻辑结构也可以有不同的物理结构实现,两者组合来满足不同的应用场景和性能要求‌

这也是数据结构的魅力所在~~

结束

尽情期待后续内容,如有不足或错误,请评论留言!

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值