秒速pk10平台app下载 _【一】、什么是数据结构

  • 时间:
  • 浏览:3

前言

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

对数据结构的理解

首先从定义上来说搞笑的话,好像对数据结构那么 那些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个关系网,那么 同类于于 关系网对应的逻辑结构叫叫做图

二、关于对象的物理存储结构

除了逻辑结构之外,朋友还有数据对象再计算机上面的物理存储结构,也之后朋友说的那些逻辑结构在机器的内存里到底要为甚放,是连续放呢还是东4个西4个隔开放呢?也之后说用4个数组来存它呢,还是用4个链表来存它呢?同类于于 就属于物理存储结构。

此篇完

以上那些之后对数据结构的理解,我能 要应该说全面了吧,之后没全面之后要紧,上面学了再继续补充。

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

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