链表面试常见题目

在这里插入图片描述
1.反转链表:头插法,
2.合并两个有序链表
3.链表倒数第k个节点:连个节点一个先走 k步,然后两个一起走,走到第一个节点.next为null
4.从尾到头打印 链表,借助栈或者递归
5.复杂链表复制,1)借助map存储,O(n)空间,2)把新节点穿在老节点之后,再删除老节点
6.BST转链表,遍历parent节点
7.两个链表第一个公共 节点,先遍历两个链表,长度1-长度2=差值,长的链表先走差值步,然后两个链表一起走,相同节点即为第一个 。
8.两个链表是否有环,快慢指针,一个走一步,一个走两步。相等有环。交点处,快 指针回到头节点,慢指针在交点处 ,两个指针每次走一步,相交即为环 的入口。在环的入口处,快指针不动,慢 指针每次走一步,快慢 指针再次相遇,慢指针走的步数,即为环的大小。
9.两个链表是否 相交 ,求交点 ,同7
10.O(1)空间删除节点 :将待删除节点.next的值赋给自己,然后删除待删除节点 .next
11.单链表排序,快排
12.约瑟夫环。经典问题

发布了55 篇原创文章 · 获赞 14 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/qq422243639/article/details/104079507