线性与非线性数据结构的区别


在这篇文章中,我们将了解线性数据结构和非线性数据结构的区别。

线性数据结构

  • 这种结构的元素按顺序排列。

  • 可以通过遍历线性结构访问每个元素。

  • 线性结构的所有元素都在同一级别,即没有层次结构。

  • 它们易于实现和使用。

  • 它们占用更多内存,因此不太节省内存。

  • 线性数据结构的时间复杂度通常会随着结构大小的增加而增加。

  • 示例包括:列表、数组、栈

下面显示了 Python 中列表的示例。

my_list = [45, 42, 12, 34, 56, 7]
print(my_list)

输出

[45, 42, 12, 34, 56, 7]

非线性数据结构

  • 元素以分层方式存储。

  • 它们使用“节点”相互连接。

  • 此结构的元素存在于不同的级别,而不是单个级别。

  • 它们的实现并不容易。

  • 它们不容易遍历——需要多次迭代才能完全遍历非线性数据结构。

  • 它们节省内存,即有效地使用内存。

  • 即使数据大小增加,非线性数据结构的时间复杂度也保持不变。

  • 示例包括:映射、树、图

下面的示例显示了如何定义图——它表明还必须定义节点互连。

示例

graph = {'A': ['B', 'C'],
         'B': ['C'],
         'C': ['D', 'E'],
         'D': ['C'],
         'E': ['F', 'G'],
         'F': ['C']}

更新于:2021年3月23日

723 次浏览

开启您的职业生涯

完成课程获得认证

开始学习
广告