我今天接受了一个开发人员职位的面试,并被问到一个有趣的技术问题,我不知道答案。我会在这里问它,看看是否有人可以为我的好奇心提供解决方案。这是一个多部分的问题:
1)给你一个包含 100 个元素(整数和指向下一个节点的指针)的单链表,找到一种方法来检测链表中途是否存在中断或损坏?你可以对链表做任何事情。请注意,您必须在列表中执行此操作,因为它正在迭代,这是在您意识到列表有任何问题之前的验证。
假设链表中的中断在第 50 个元素处,则整数甚至指向下一个节点(第 51 个元素)的指针可能指向一个垃圾值,该值不一定是无效地址。
2)请注意,如果链表中存在损坏,您将如何最大程度地减少数据丢失?