图的邻接表表示法可以换成红黑树吗
我觉得图的邻接表表示法就是搞了一个链表数组,每个数组元素就是一个链表,当对图的进行遍历的时候,把顶点和边插入对应数组下标的链表中,那么时间复杂度是O(n)。我在想,为什么不用红黑树呢,我可以定义和链表数组元素数相同的红黑树数,然而红黑树的插入删除复杂度都是O(logn)的。这不是更好吗,除了代码量要大一些之外。
你们是怎么想的呢
[解决办法]
遍历都是O(n),你无论换什么都改进不了。
只是想改进插入删除的话,可以RBTree。但是更快的还有一个邻接矩阵的O(1)插入删除,所以只要内存够的时候一般直接用邻接矩阵。