首页 > 解决方案 > 一次性从单链表中删除第 k 个最后一个元素

问题描述

我正在练习 Python,我想不出任何解决这个问题的方法。问题是仅在一次传递和恒定空间中从单链表中删除第 k 个最后一个元素。我只能想到一个需要 2 遍的解决方案。此外,在问题中,没有提到列表的大小,所以我假设大小是先验已知的。谁能告诉我一种一次性完成的方法,好吗?

标签: pythonsingly-linked-list

解决方案


将要删除的项目之前的项目的指针/位置缓存在一个临时变量中。

所以会有一个循环,迭代到最后。会有一个语句在 temp 中缓存第 (ik-1) 个元素。

当此循环结束时, temp 将具有要删除的项目的位置。

希望这可以帮助。


推荐阅读