我有一个 n 个节点的链表,我想删除第 k 个节点并显示其中的元素。如果 n 的值相对较小并且问题的复杂性不是问题,这很容易。
问题是当我在链表中有 n 个节点时 n >=200000 并且我想删除一个也是相对较大值的节点(比如 k=150000)。
这个问题的正常解决方案是遍历整个链表并删除一个节点(解决方案的复杂度为 O(n) ),尽管它是直接且简单的解决方案,但需要更多时间。这个问题的其他解决方案可以是 2 个指针,但这仍然不是最佳解决方案。
我正在寻找一种最佳的解决方案,并在最短的时间内提供结果。
希望我的问题很清楚。需要一些帮助..