3.数据结构到底学什么

       数据的物理结构有 2 种,逻辑结构有 4 种,它们可以随意组合。例如,无关系的数据可以选择集中存放,也可以选择分散存放。针对具有不同物理结构和逻辑结构的数据,数据结构都会给出最恰当的存储方案。学习数据结构,实际上就是学习这些存储数据的方案。

1. 数据结构的物理结构和逻辑结构的组合存储方案:

       注意,想彻底玩转图中罗列的这些存储方案也是不容易的,除了掌握各个存储方案本身,还要学会在各个存储方案中完成对数据的“增删改查”操作,以及用这些存储方案解决一些常见的实际问题(例如字符串的模式匹配、矩阵转置、最小生成树、最短路径等)。

2. 关于数据结构与算法的关系和区别

       数据结构和算法是紧密相关的,学习数据结构的过程中,还要掌握一些常用的算法。

       俗话说,程序 = 数据结构(解决存储数据和数据之间关系) + 算法(解决如何访问和处理数据问题)

     1)数据结构中具体实现:

  • 栈(Stack):栈是一种特殊的线性表,它只能在一个表的一个固定端进行数据结点的插入和删除操作。
  • 队列(Queue):队列和栈类似,也是一种特殊的线性表。和栈不同的是,队列只允许在表的一端进行插入操作,而在另一端进行删除操作。
  • 数组(Array):数组是一种聚合数据类型,它是将具有相同类型的若干变量有序地组织在一起的集合。
  • 链表(Linked List):链表是一种数据元素按照链式存储结构进行存储的数据结构,这种存储结构具有在物理上存在非连续的特点。
  • 树(Tree):树是典型的非线性结构,它是包括2 个结点的有穷集合 K。
  • 图(Graph):图是另一种非线性数据结构。在图结构中,数据结点一般称为顶点,而边是顶点的有序偶对。
  • 堆(Heap):堆是一种特殊的树形数据结构,一般讨论的堆都是二叉堆。
  • 散列表(Hash table):散列表源自于散列函数(Hash function),其思想是如果在结构中存在关键字和T相等的记录,那么必定在F(T)的存储位置可以找到该记录,这样就可以不用进行比较操作而直接取得所查记录。

      2) 算法具体内容:

       一般有以下几种常用运算:

  • 检索:检索就是在数据结构里查找满足一定条件的节点。一般是给定一个某字段的值,找具有该字段值的节点。
  • 插入:往数据结构中增加新的节点。
  • 删除:把指定的结点从数据结构中去掉。
  • 更新:改变指定节点的一个或多个字段的值。
  • 排序:把节点按某种指定的顺序重新排列。例如递增或递减。

上一篇:

2.数据的逻辑结构和存储结构(物理结构)_IT小悟的博客-CSDN博客本文介绍数据结构中的逻辑结构和存储结构(物理结构)的定义和包含的内容。数据的逻辑结构有 4 种,分别是“无关系”、“一对一”、“一对多”和“多对多”。数据的存储结构有 2 种,分别是集中存储和分散存储。https://blog.csdn.net/speedwalkman/article/details/129896394

下一篇:

4. 好算法的判断标准: 时间复杂度和空间复杂度_好的算法的标准_IT小悟的博客-CSDN博客程序=数据结构(解决存储数据和数据之间关系) + 算法(解决如何访问和处理数据问题),当数据之间的关系确定后,算法的选择将是影响程序执行效率的关键,通常运用“时间复杂度”和“空间复杂度”来衡量一个算法的运行效率_好的算法的标准https://blog.csdn.net/speedwalkman/article/details/130366560

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

IT小悟

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值