跟我又是栈又是堆又是树又是图的,问你什么是数据结构,你咋还不会说了呢?
【一】、什么是数据结构 前言 其实说实话,大一刚来的时候就学了数据结构,当时学的数据结构是下面图片中的这一本,不过说来惭愧,当时由于入门时C语言学的太菜,以至于开这门课的时候思维跟不上就抵触,不用解释,就是给自己找借口,坦白说吧,就是没好好学,不过人非圣贤,孰能无过,人生难免会犯点错,及时改正还是个好孩子,因此,我决定把之前没学好的数据结构重新补回来。 对数据结构的理解 首先从定义上来说的话,好像对数据结构没有什么一个统一的、标准的答案,我找了好几本书,挑了一个我认为还计较好理解的定义: 数据结构是计算机中存储、组织数据的方式。通常情况下,精心选择的数据结构可以带来最优效率的算法。 如果你没接触过数据结构,你看了定义能看懂吗?如果你能看懂,我很佩服你,我反正是不行,不过现在因为接触的东西比较多,听得多了,看了也能理解。我觉得对于新手,应该先让新手去理解,等有了自己的理解之后再看官方定义的话,效果会比较好,反正我是这么认为的。我用生活中的例子来解释什么是数据结构吧: 举例:如何在书架上摆放图书? 也就是说,现在有一些书架,还有一堆图书,你要怎样把它们放到书架上去呢?换言之说,有一堆数据,给了你一些存储空间,你要怎么把这些数据存起来呢? 其实这个问题问的不科学,因为你不知道所谓的书架是长什么样,可能是下面图片中的任意一种。 所以你就知道了,当有人问你一个数据怎么组织的时候