上篇文章中我们对单列集合中常用的方法和遍历查询。通过本文章为我们解惑,好好的字符串用起来不就行了,为什么要用集合这些工具类?本篇文章将简要介绍数据结构,让读者了解它们在计算机中以何种结构方式存在。那么,什么是数据结构呢?下面我们来详细解释。
上篇文章中我们对单列集合中常用的方法和遍历查询。通过本文章为我们解惑,好好的字符串用起来不就行了,为什么要用集合这些工具类?本篇文章将简要介绍数据结构,让读者了解它们在计算机中以何种结构方式存在。那么,什么是数据结构呢?下面我们来详细解释。
数据结构是计算机存储、组织数据的方式。 数据结构是指相互之间存在一种或多种特定关系的数据元素的集合。 通常情况下,精心选择的数据结构可以带来更高的运行或者存储效率。
数据结构往往同高效的检索算法和索引技术有关。 这句话是啥意思呢?
我们举个简单的例子。就像金庸小说中所写的,武功招式就相当于我们的算法,而数据结构就是我们的内功心法;而武功的高低,不仅仅是武功招式,更重要的是 学会的内功心法。就比如张无忌在学会九阳神功之后,就可以大战六大门派。而数据结构的学习,也会让我们事半功倍。 凭借着 “数据结构+算法=程序” 这句话,Pascal之父获得了图灵奖。
总结来说:
而这两点使我们作为程序开发人员的必备基本功,不是一朝一夕就能成为绝世高手的,我们需要一步步去不断的学习积累,积硅步以致千里。
编程学习,从云端源想开始,课程视频、在线书籍、在线编程、一对一咨询……你想要的全部学习资源这里都有,重点是统统免费!点这里即可查看
在计算机学科中,数据结构是一门很重要的基础学科,知识点很多。在这里我们不讲那么多,只讲述我们集合中用到的几种数据结构,同学们可以下去自行学习更多的数据结构的知识。 常用结构三个:数组、链表、红黑树。我们分别来了解一下:
数组的定义:
存储思路:所有数据存储在连续的空间中,数组中的每个元素都是一个具体的数据。 特点:
如下图:
优点: 设计简单,读取与修改表中的任意一个元素的时间都是固定的,速度快
缺点: 容易造成内存浪费;删除或者插入数据需要移动大量数据,速度慢
每个数据单独存在一小块内存中,这个单元叫做节点,每个节点知道下一个节点的地址,叫做单向链表。 每个节点既知道下一个节点地址,又知道上一个节点地址,叫做双向链表。
特点:
优点: 充分节省内存空间,数据插入和删除方便,不需要移动大量数据
缺点: 查询数据必须按顺序找到该数据,操作麻烦
简单理解,就是一种类似于我们生活中树的结构,只不过每个节点最多只有两个叶子。计算机世界的树,刚好与我们现实中的树成镜像相反,树根在上,树枝在下。二叉树如下图:
而我们要说的是二叉树的一种比较有意思的叫做红黑树,红黑树本身就是一颗二叉查找树。我们在这里只需要记住它的特点 可以非常方便的对树中的所有节点进行排序和检索。
本文主要讲了三个常用的数据结构,以及数据结构在计算机中的重要意义,让我们逐步进入这个计算机的世界。
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!