24年的408真题出现了十字链表考点,这个对于很多同学是拿不到这两分的,很多同学复习的时候是知道有这个知识点,但是看到因为第一遍搞不懂干脆就放弃了,有的因为知识性的记忆遗漏从而丢分,究其根本其实是因为不理解十字链表的构造画法,接下来我将一步一步画图说明,希望能帮助到大家,同时有什么想法的欢迎在评论区指出。
给出有向图如下
第一步,画出顶点节点,这里对十字链表的顶点节点和弧节点做下说明(很重要,帮助理解画法)
首先是顶点节点,如下
其中,data存放节点数据信息,first in存放以此节点为头节点的弧的指向(指向此弧的尾节点),first out存放以此节点为尾节点的弧的指向(指向此弧的头节点);
其次是弧节点,如下
其中,tailvex和headvex分别存放弧尾和弧头两个顶点的编号 ,hlink指向弧头相同的下一个弧节点(不好理解可以先不看这种解释,往后看),think指向弧尾相同的下一个弧节点;
第二步,画横向的指针指向
例如对于