C++ ---- 链表题 ---- 持续更新中。

1,链表逆序

*1,Node * ReverseList(Node head) //链表逆序
在这里插入图片描述
2,已知两个链表head1 和head2 各自有序,请把它们合并成一个链表依然有序。(保留所有结点,即便大小相同)
在这里插入图片描述

3,已知两个链表head1 和head2 各自有序,请把它们合并成一个链表依然有序,这次要求用递归方法进行。
在这里插入图片描述

2,从尾到头打印链表

输入一个链表的头节点,按链表从尾到头的顺序返回每个节点的值(用数组返回)。

如输入{1,2,3}的链表如下图:
在这里插入图片描述
返回一个数组为[3,2,1]
在这里插入图片描述

3,链表中倒数最后k个结点

输入一个链表,输出一个链表,该输出链表包含原链表中从倒数第k个结点至尾节点的全部节点。
如果该链表长度小于k,请返回一个长度为 0 的链表。
在这里插入图片描述
stack栈先进后出

4,判断单链表是否有环

判断给定的链表中是否有环。如果有环则返回true,否则返回false。
空间复杂度O(1)
在这里插入图片描述

5,链表反转

输入一个链表,反转链表后,输出新链表的表头。
在这里插入图片描述

6,重排链表

在这里插入图片描述
在这里插入图片描述

7,链表中环的入口结点

给一个链表,若其中包含环,请找出该链表的环的入口结点,否则,返回null。
在这里插入图片描述
通过快慢指针,如果有环,则必定快慢指针能碰头。

8,两个链表的第一个公共节点

输入两个无环的单链表,找出它们的第一个公共结点。
在这里插入图片描述

9, 判断一个链表是否为回文结构

在这里插入图片描述

10,单链表的排序

给定一个无序单链表,实现单链表的排序(按升序排序)。
在这里插入图片描述

11,删除有序链表中重复的元素

删除给出链表中的重复元素(链表中元素从小到大有序),使链表中的所有元素都只出现一次在这里插入图片描述

12,删除链表的倒数第n个节点

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值