线性与非线性数据结构的区别
在这篇文章中,我们将了解线性数据结构和非线性数据结构的区别。
线性数据结构
这种结构的元素按顺序排列。
可以通过遍历线性结构访问每个元素。
线性结构的所有元素都在同一级别,即没有层次结构。
它们易于实现和使用。
它们占用更多内存,因此不太节省内存。
线性数据结构的时间复杂度通常会随着结构大小的增加而增加。
示例包括:列表、数组、栈
下面显示了 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']}
广告