如何解决链表中损坏的指针?

vij*_*231 2 c linked-list

如果我发现链表中的指针(链接)字段已损坏,我该如何解决这个问题?

我在面试中被问到这个问题.我说不,它不可能解决它.采访者告诉它可能.有什么方法吗?

tor*_*ing 5

好吧,假设它是一个双重链表:

如果它是被破坏的"下一个"指针,可以从尾部开始并使用"前一个"指针,朝向头部遍历列表,同时保持对遍历的最后一个元素的引用.当您找到具有错误指针的元素时,您只需要使该元素的"下一个"指针指向遍历的最后一个元素.

如果双向链接列表中的"上一个"链接已损坏,则可以反转该过程 - 从头部开始,遍历直到找到错误的"上一个"指针,并使用对遍历的最后一个元素的引用来修复它.