名企算法题目(3) 链表问题
1.打印2个有序链表的公共部分
2.单/双链表的倒数第k个节点
主要问题:1 是否存在
2 前后指针
3.删除链表的中间节点和a/b处的节点
4.反转单向与双向链表
双向是个什么鬼? pre和next 都交换下
5.反转链表中从 a到b的节点,并把 b到a接到原链表中
6.约瑟夫韩的O(n)实现(待研究)
7.判断链表是否回文
8.链表partition
拆分成3链表再合并
9.带rand节点的链表复制
分析:不带rand直接复制next
有rand后问题: 复制完next后,原来链表中rand的不知道是哪一个
解决办法:确定rand是哪一个
10.链表实现大数相加
11.链表环,相交问题(需要研究下)
12.链表中 每k个节点逆序
13.删除无序链表中出现的重复节点
14. 删除链表中 value为k的节点
15.搜索二叉树转化为双向链表(这题有意思)
16单链表的选择排序
空间复杂度O(1),时间复杂度O(n2)
17 给定node节点,删除node节点..
什么垃圾题目:值替换又不是删除
18.有序环链 添加节点
19.双有序链表合并
20.链表左右半区 交叉合并
12345 合并成 14253