什么是数据结构?数据结构和算法有什么关系?通俗易懂 初学者必看
数据结构的定义
“ 数据结构是计算机存储、组织数据的方式。”——摘自百度百科
这句话中有三个要点:数据、存储和组织。下面我将一一解释。
数据
我们在互联网上看得到的看不到的,文字、图片、音频…他们都是数据。
存储
那么我们将如何来存储这些数据呢?下面是两个生活中的例子。
在现实生活中,我们通过可以通过列表存储联系人:
- 联系人1 电话:123456789
- 联系人2 电话:987456123
- 联系人3 电话:456789123
把数据比作外卖,那么外卖柜就是存储数据的方式:
1 | 2 | 3 |
---|---|---|
4 | 5 | 6 |
7 | 8 | 9 |
外卖也可以有其他的存储方式,比如在骑手的车上堆叠、比如挂在门把手上…
数据也同样有各种各样的存储方法,我们在学习数据结构时会接触许多存储数据的方式。
组织
组织是数据结构非常重要的一点。
所谓组织,就是CRUD.增加(Create)、读取(Read)、更新(Update)和删除(Delete)。
添加一个联系人,这是增加(Create)
打电话时手机读取该联系人的电话号码,这是读取(Read)。
修改联系人的电话,这是更新(Update)。
删除联系人,这是删除(Delete)。
总结
我们再来回顾一下数据结构的定义,数据结构是计算机存储、组织数据的方式。
我们学习数据结构,就是学习如何存储数据,如何组织数据。
数据结构和算法的关系
数据结构 ≠ 算法
算法是组织数据的最佳CRUD解
比如说,我们用类似外卖柜的方式管理联系人,这并不妥当,我们用管理联系人的方式存外卖,这也并不方便。
简言之,算法就是前人总结的、高效的、优美的组织数据的方式。