分享

算法创作|什么是数据结构

 算法与编程之美 2021-03-13

前言

问题描述

我们经常会听到有人说起:程序 = 数据结构 + 算法,当我们遇到一个问题,或有一个需求时,在设计程序来解决问题时,其中重要一步就是设计数据结构。那么到底什么是数据结构呢?

解决方案

我们先看看百度百科上对数据结构的定义:

数据结构是一种抽象的封装。说简单点,就是把一堆基本的数据,按照某种顺序,方法给揉成一坨。相信大家都曾尝试过做菜,做一道菜需要放各种调料,如盐,味精还有肉等,把它们混合在一起就做成了一道菜。这里我们以生活中常见的番茄炒蛋为例来讲一讲什么是数据结构。下图是百度百科中番茄炒蛋的做法。

下面我们用程序来表示一下:

class 番茄炒蛋:

     鸡蛋 = [ ]

     西红柿 = [ ]

     食用油 = [ ]

     味精 = [ ]

     生抽 = [ ]

葱花 = [ ]   

清水 = [ ]

= [ ]

= [ ]

上述这个结构体就是一个自定义的数据结构,将很多种不同的东西融合在一起。而计算机中的数据结构,则是把一些基本的数据类型,如stringintfloat等融合成一些复杂的数据结构,如listtupledict等。当然,数据结构并没有我们举的例子那样简单,但是原理是一样的。

结语

具体来说,数据结构就是对数据按照一定的规律进行组织和储存的一种方式。而对数据如何安排,这取决于你以怎样的方式去安排储存这些数据,你得到的就是怎样的数据结构。在用程序解决一些问题时,我们要“因地制宜”地设计或选择数据结构,因为没有完美的数据结构,只有最合适的数据结构。

实习编辑:王晓姣

稿件来源:深度学习与文旅应用实验室(DLETA)

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多