大发2分彩app赚钱_【一】、什么是数据结构

  • 时间:
  • 浏览:2
  • 来源:孤妄资源网_提供好牛娱乐网技术_善恶资源网资讯

前言

令人头疼的书啊,一切尽在不言中。

对数据特性的理解

首先从定义上来说一句话,好像对数据特性越快哪几个另4个 统一的、标准的答案,我找了好几本书,挑了另4个 我认为还计较好理解的定义:

数据特性是计算机中存储、组织数据的最好的办法。通常情況下,精心选则的数据特性还要能带来最优速率的算法。

就让你没接触过数据特性,你看过定义能看懂吗?就让你能看懂,我很佩服你,我反正是不行,不过现在就让接触的东西比较多,听得多了,看过要能理解。我确实对于新手,应该先让新手去理解,等有了各人的理解就让再看官方定义一句话,效果会比较好,反正我是越快认为的。我用生活中的例子来解释哪几个是数据特性吧:

举例:何如在书架上摆放图书?

也要是说,现在有一些书架,还有一堆图书,帮我何如把它们倒入书架上去呢?换言之说,有一堆数据,给了你一些存储空间,帮我何如把哪几个数据存起来呢?

确实这俩疑问问的不科学,就让你问你所谓的书架是长哪几个样,就让是下面图片中的任意有并不是。

 

 

统统你就知道了,当没人人问你另4个 数据何如组织的就让,确实是跟这俩数据的规模有关系的。不一样规模的疑问,它除理起来的难度就不一样。难在哪几个地方呢?难不在 说帮我把它何如放,而在于放这俩书是为了做事情用的,统统说图书的摆放确实跟另4个 操作直接相关:

操作一:新书何如插入

操作二:何如找到某本指定的书

最好的办法一:问你大伙 是何如考虑的,我第另4个 感觉要是随便放,随便放另4个 好处要是:新书何如插入,这俩操作是非常简单的,哪有空就放哪,最简单的最好的办法要是把所有的书一本一本挨着放,统统呢,所有的新书哪里有空放哪里,So easy!放起来简单,但第3个操作怎办,何如查找?那就会成为一件很恐怖的事……累死你!哪几个就让累死呢,确实就让要是另4个 很小的书架,倒也累不死,但就让是后边第三张那样的书城,就让你想象,后边所有的图书都有随便放的,就让没人人问你,这俩书城里有越快某一本书,确实那本书越快,但那个她 忘了有越快,那你何如能选则它到底有越快呢?你就只好从头到尾把每一本书都过一遍,就让要能叹一口气说……唉,不好意思,越快这本书。

最好的办法二:曾经 们有越快稍微聪明一些的除理最好的办法呢?要是何如帮我找书找的方便呢?第3个最好的办法,要是按照书名的拼音字母顺序排放,有了这俩字母序就让,查找就方便多了。另4个 最聪明的最好的办法是二分查找哪几个是二分查找:比如说现在有一长排的书倒入你眼前 ,就让大伙 找一本叫《数据特性》的以S开头的书,曾经 先从这俩排的后边找一本书出来看它的书名的首字母,就让我我说是《离散数学》,以L开头的书,曾经 们知道,S在L的后边,统统《离散数学》前面的书让我不不管它了,我的查找范围缩小了一半,从L现在后后刚现在开始往后找,就让再找这俩半的后边,比如找到的一本书是《网络爬虫》,以W开头的,那S在L和W后边,《网络爬虫》后边的书让我不不管了,于是我的查找范围又缩小了一半,以此类推,帮我每次都找,就让跟后边这俩比,减慢就会把范围缩小到一本书上,让我会知道这本书到底是有还是越快。这俩最好的办法比前面的最好的办法聪明多了,它很好的除理了查找的疑问。就让,疑问又来了,新书来了何如插入呢?它就会成为新的令人头疼的疑问。比如说,我新买了一本书叫《阿Q正传》,是以A开头的,呃……惨了,曾经 们得把几乎所有的书往后一本一本的错位,总爱到前面留出另4个 空挡,把新书倒入去,这俩似乎也很头疼。

最好的办法三:那何如找另4个 两全其美的最好的办法呢?大伙 来想想,图书馆里是何如来摆书的,大伙 就让我我说去图书馆,找《数据特性》,要何如找,你不就让是从第一本现在后后刚现在开始找,要是就让是随便后边摸一本找,你进到图书馆里,第一件事情要找的是计算机类的书在哪里对不对?图书馆里的书通常是按照书的类别来分的,比如说大伙 有社会科学类、文学类、艺术类、理科、工科等,就让工科下面就让都会分的再细一些,比如说大伙 计算机类就让就分在工科的下面,这俩分法有哪几个好处呢?把书架划分成几个区域,每快区域指定摆放有并不是类别的图书,在每段类别内,按照书名的拼音字母顺序排放,曾经 不管我在每另4个 类里做哪几个样的操作,总归来说,图书的规模小了统统,跟整个图书馆的规模相比,我是某一类的,无论是查找还是插入,都有非常方便的。查找呢,要是在二分查找就让,大伙 先定另4个 类别,就让在另4个 类的另4个 小范围后边做二分查找,就还要能减慢的找到大伙 要查找的书了。就让是插入,也是先定类别,用二分查找来选则一下它应该被插在哪几个位置,就让移空位这件事就让还是要做的,就让总归比大伙 刚现在后后刚现在开始要移的书的数量少多了。

那现在疑问又来了:

疑问一:空间何如分配?

疑问二:类别应该分多细?

大伙 分的各种类别的书,它的藏书量是不一样的,你是统一都给它分……还是每一类都几个个书架,就让分好吗?这也是另4个 很头疼的疑问,我越快了,你就让书架给多了,就会有一些空间始终空在那浪费着,你就让书架给小了,新书来的就让要不断地加新柜子,很讨厌。还有分类别要分多细的疑问,帮我是分的比较粗,越快同一类后边的书就会有统统,那你的工作量还是会很大,要是想减少工作量,最好还是类别分的细一些,就让类别一分细,就会有副作用,类别太少了,图书的量一多,也是麻烦。

说哪几个疑问是想说明:

除理疑问最好的办法的速率,跟数据的组织最好的办法是直接相关的

曾经 这介绍数据特性的组织最好的办法的就让,确实有另4个 概念:

一、关于数据对象的逻辑特性

比如说,大伙 一现在后后刚现在开始把书架想象成简单的一长条,越快一层的架子,就让所有的书是另4个 另4个 挨着放的,除了一头一尾的书以外,每一本书的前面和后边都不还要能一本书,就让每一本书都有另4个 编号一句话,越快你这另4个 编号对应的要是一本书,越快这俩特性是一对一的特性,大伙 管它叫线性特性。

另外有并不是组织最好的办法是后边说的第有并不是最好的办法,要是先把图书分类,就让我给每另4个 类另4个 编号一句话,越快你这另4个 类别的编号后边对应着统统本书,越快这是另4个 一对多的逻辑特性,这俩特性有个名字叫做树。

再说图书馆,假设大伙 还统计曾经 一些信息:这俩本书都有哪2各人买过,买了这本书的人还买过其它的哪几个书,于是呢,确实是一本书对应着统统人,而另4个 人又对应了统统本书,这是另4个 多对多的、很复杂的另4个 关系网,越快这俩关系网对应的逻辑特性叫叫做图

二、关于对象的物理存储特性

除了逻辑特性之外,大伙 还有数据对象再计算机后边的物理存储特性,也要是大伙 说的哪几个逻辑特性在机器的内存里到底要何如放,是连续放呢还是东另4个 西另4个 隔开放呢?也要是说用另4个 数组来存它呢,还是用另4个 链表来存它呢?这俩就属于物理存储特性。

此篇完

以上哪几个要是对数据特性的理解,帮想要说全面了吧,要是没全面要是要紧,后边学了再继续补充。

看过有收获?越快希望老铁别吝啬你的三连击哦1、点个推荐,让更多的人看过这篇文章2、关注我的原创微信公众号【泰斗贤若如】,第一时间阅读我的文章3、欢迎关注我的博客

 【原创声明】:各人原创:https://www.cnblogs.com/zyx110/