LeetCode 链表算法
链表算法
OldWang313
这个作者很懒,什么都没留下…
展开
-
LeetCode C++ 算法 合并两个有序链表
将两个升序链表合并为一个新的升序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。示例 1:输入:l1 = [1,2,4], l2 = [1,3,4]输出:[1,1,2,3,4,4]示例 2:输入:l1 = [], l2 = []输出:[]示例 3:输入:l1 = [], l2 = [0]输出:[0]提示:两个链表的节点数目范围是[0, 50] -100 <= Node.val <= 100 l1和l2均按非...原创 2021-09-29 10:18:11 · 164 阅读 · 0 评论 -
LeetCode C++ 算法 删除链表的倒数第 N 个结点
给你一个链表,删除链表的倒数第n个结点,并且返回链表的头结点。示例 1:输入:head = [1,2,3,4,5], n = 2输出:[1,2,3,5]示例 2:输入:head = [1], n = 1输出:[]示例 3:输入:head = [1,2], n = 1输出:[1]进阶:你能尝试使用一趟扫描实现吗?思路:双指针,快指针先走n步,然后两个指针同时依次向前移动直到快指针到达尾部,则慢指针当前位置为倒数第n+1个结点。/** * D..原创 2021-09-29 10:03:03 · 224 阅读 · 0 评论 -
LeetCode C++ 算法 删除链表中的节点
请编写一个函数,使其可以删除某个链表中给定的(非末尾)节点。传入函数的唯一参数为要被删除的节点。现有一个链表 --head =[4,5,1,9],它可以表示为:示例 1:输入:head = [4,5,1,9], node = 5输出:[4,1,9]解释:给定你链表中值为5的第二个节点,那么在调用了你的函数之后,该链表应变为 4 -> 1 -> 9.示例 2:输入:head = [4,5,1,9], node = 1输出:[4,5,9]解释:给定你链...原创 2021-09-29 09:59:23 · 173 阅读 · 0 评论