当前位置:首页 > 问问

为什么用十字链表 为何选用十字链表

1、简介

十字链表,是一种常用的数据结构,常用来存储图等结构。相比于普通的链表,它允许同时根据横纵两个方向进行遍历,因此十字链表在某些特定的场景下有着很好的应用价值。

2、支持快速查找

十字链表可以通过其横纵两个方向上的链表,快速查找某个节点的横纵坐标,这为一些需要频繁查找某个节点附近其他节点的场景提供了便利,例如某些图形算法中,需要查找图形中与某个节点的距离相近的节点。

同时,十字链表支持快速查找某个节点在链表中的位置,这可以大大减少插入和删除操作时的时间复杂度。

3、便于节点的插入和删除

相对于普通的链表,十字链表的横纵两个方向都有链表指向,因此在插入或删除某个节点时只需要操作它横纵两个方向上对应的链表,就可以完成整个操作,避免了在普通链表中因为需要查找某个节点的前驱节点而带来的时间消耗。

4、支持稀疏矩阵的压缩存储

十字链表可以非常方便的将稀疏矩阵压缩存储,即只存储矩阵中不为0的元素的信息,避免了普通二维数组等静态存储结构中浪费空间的问题。同时,在对稀疏矩阵进行操作时,十字链表也是一种非常方便的存储方式,避免了对整个矩阵的无效操作,节省了时间。

声明:此文信息来源于网络,登载此文只为提供信息参考,并不用于任何商业目的。如有侵权,请及时联系我们:fendou3451@163.com
标签:

  • 关注微信

相关文章