解释线性和非线性数据结构的区别
在这篇文章中,我们将了解线性数据结构和非线性数据结构之间的区别。
线性数据结构
这种结构的元素按顺序排列。
每个元素都可以通过遍历线性结构来访问。
线性结构的所有元素都在一个层次上,i.e没有层次结构。
它们易于实施和使用。
它们使用更多的内存,因此它们对内存不是很友好。
线性数据结构的时间复杂度通常随着结构规模的增加而增加。
示例包括-列表、数组、堆栈
下面显示了Python中的列表示例。
my_list = [45, 42, 12, 34, 56, 7] print(my_list)输出结果
[45, 42, 12, 34, 56, 7]
非线性数据结构
元素以分层方式存储。
它们使用“节点”相互连接。
这种结构的元素存在于不同的层次,而不是单一的层次。
它们的实施并不容易。
它们不能轻易遍历——它需要多次迭代才能完全遍历非线性数据结构。
它们对内存友好,i.e可以有效地使用内存。
即使数据的大小增加,非线性数据结构的时间复杂度也保持不变。
示例包括-映射、树、图
下面的示例显示了如何定义图形-它表明还必须定义节点互连。
示例
graph = {'A': ['B', 'C'], 'B': ['C'], 'C': ['D', 'E'], 'D': ['C'], 'E': ['F', 'G'], 'F': ['C']}