C++怎么移除链表倒数第N个节点


这篇文章主要介绍了C++怎么移除链表倒数第N个节点的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇C++怎么移除链表倒数第N个节点文章都会有所收获,下面我们一起来看看吧。Given a linked list, remove thenthnode from the end of list and return its head.For example,Given linked list:1->2->3->4->5, andn= 2.

After removing the second node from the end, the linked list becomes1->2->3->5.Note:
Givennwill always be valid.
Try to do this in one pass.这道题让我们移除链表倒数第N个节点,限定n一定是有效的,即n不会大于链表中的元素总数。还有题目要求一次遍历解决问题,那么就得想些比较巧妙的方法了。比如首先要考虑的时,如何找到倒数第N个节点,由于只允许一次遍历,所以不能用一次完整的遍历来统计链表中元素的个数,而是遍历到对应位置就应该移除了。那么就需要用两个指针来免费云主机域名帮助解题,pre 和 cur 指针。首先 cur 指针先向前走N步,如果此时 cur 指向空,说明N为链表的长度,则需要移除的为首元素,那么此时返回 head->next 即可,如果 cur 存在,再继续往下走,此时 pre 指针也跟着走,直到 cur 为最后一个元素时停止,此时 pre 指向要移除元素的前一个元素,再修改指针跳过需要移除的元素即可,参见代码如下:方式一:方式二:关于“C++怎么移除链表倒数第N个节点”这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对“C++怎么移除链表倒数第N个节点”知识都有一定的了解,大家如果还想学习更多知识,欢迎关注百云主机行业资讯频道。

相关推荐: python操作excel的代码怎么写

本篇内容主要讲解“python操作excel的代码怎么写”,感兴趣的朋友不妨来看看。本文介绍免费云主机域名的方法操作简单快捷,实用性强。下面就让小编来带大家学习“python操作excel的代码怎么写”吧!到此,相信大家对“python操作excel的代码怎么…

免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。

Like (0)
Donate 微信扫一扫 微信扫一扫
Previous 02/12 15:12
Next 02/12 15:12

相关推荐