c++ - 链表问题

标签 c++ c

删除单个链表的第't'(t>1)个节点。在生成的链表中,再次删除第't'个节点。重复此操作直到只剩下 t-1 个节点。

为此我想出了: 遍历直到到达第't'个节点,删除所有节点直到结束。 除了这个还有什么有效的方法吗?谁能帮帮我。谢谢。

最佳答案

听起来不错,算法是 O(n)。

确保您也删除了第 t 个节点,因为您只希望保留 t-1 个节点。

听起来他们希望您一次删除 1 个节点,总是删除第 t 个,直到不再有第 t 个节点存在为止。他们可能希望您一次执行 1 个,这样您就可以在要删除的节点上为 C++ 调用 delete 或为 C 调用 free

关于c++ - 链表问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2984842/

相关文章:

c++ - 如何从字符串中删除所有双空格

c - 拜托,你能帮我解决这个递归函数吗?

c - C语言中的多管道( children 不停读)

c - 如何将 char* 设置为 char*?

c++ - 在 DirectX9 中将纹理寻址模式设置为边框颜色

python - OpenCV createCalibrateDebevec.process 给我 "dst is not a numpy array, neither a scalar"

c++ - 循环更新 Linux 的终端屏幕

c++ - 共享内存大小计算c++

c - int a[20], "&a + 4"的答案是什么?

c - 查找内存C中指针的值