我们进行的主要操作是数据结构中的插入、删除和搜索,这些操作也可以使用数据库查询来完成。那么,数据结构的用途是什么?
它与数据库相比有何独特之处?
我们进行的主要操作是数据结构中的插入、删除和搜索,这些操作也可以使用数据库查询来完成。那么,数据结构的用途是什么?
它与数据库相比有何独特之处?
数据结构展示了问题中的对象如何被建模和组织。
数据结构解决的问题是如何逻辑地对现实世界中的对象进行建模,以便我们可以通过计算方式解决问题。
数据库是关于信息如何持久化的。如果需要,数据结构中的数据可以被持久化到数据库中,也可能不需要。
数据库是一组表格(可能还包括存储过程、函数、视图等)的集合。
但是,现在我们先保持简单。每个表格都有一个表结构,定义了可以放置什么内容。对于 No-SQL 数据库来说,情况有所不同,因为它们更加灵活。但是,现在我们还是保持简单。
数据库可以被命名为任何名称,比如“鸭嘴兽”。它可以包含许多表格,例如“野生鸭嘴兽”和“圈养鸭嘴兽”等。
其中一个表格可能具有以下结构:
Name Data Type
-------------------------
ID int
Name VarChar
Weight Float
PoisonToeLength Float
数据结构是计算机中的内存,而数据库则是存储。数据结构是易失性内存,而数据库则是非易失性内存。
在我看来,数据库是一个术语,用于指代一组记录,这些记录可以是任何东西,例如库存数据、用户数据等。现在,我们如何将其存储在计算机上是另一个技术问题。根据用例,我可以使用链表、数组、树、图等来存储我的记录。因此,数据结构是给这些结构体的一个技术术语。简而言之,数据库更多地是商业术语或民间传说术语,而数据结构是一个技术术语,用于指代记录的集合。
数据库和数据结构的主要区别在于,数据库是一组存储在永久内存中并进行管理的数据,而数据结构是一种在临时内存中高效存储和排列数据的方式。 总体而言,数据是原始且未经加工的事实。
数据结构是您的数据组织方式的逻辑表示。而数据库是一种中间件,可帮助您将数据存储到文件系统中。
假设您在一家社交网络公司工作。直观地说,社交网络是一个图形(数据结构)。您可以在此应用图形算法来解决实际问题。同时,这个图形中的数据必须被持久化存储在某个地方,以便您可以读取/写入它们。与其编写代码将它们保存到文件中,图形数据库可以帮助您完成这项任务。
一个是逻辑的,另一个是中间件(与物理紧密相关)。
数据库是存储数据的概念视图,就像将Excel表格、CSV文件存储在数据集中,这些数据集以永久性方式存储数据,而数据结构是将数据存储到内存中的逻辑表示,例如数组、图等以临时性方式存储数据。
数据结构是实现数据库或数据存储的基本要求。