20道链表问题
Posted mschen
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了20道链表问题相关的知识,希望对你有一定的参考价值。
1. 如何在一次传递中找到单链表的中间元素? 答案:http://javarevisited.blogspot.sg/2012/12/how-to-find-middle-element-of-linked-list-one-pass.html
2. 如何在不使用递归的情况下反转单链表? 答案:http://javarevisited.blogspot.sg/2017/03/how-to-reverse-linked-list-in-java-using-iteration-and-recursion.html
3. 如何删除一个未排序链表中的重复节点? 答案:https://www.geeksforgeeks.org/remove-duplicates-from-an-unsorted-linked-list/
4. 如何找出一个单链表的长度? 答案:http://javarevisited.blogspot.sg/2016/05/how-do-you-find-length-of-singly-linked.html
5. 如何查找链表是否包含循环?如何找出循环开始节点? 答案:http://javarevisited.blogspot.sg/2013/05/find-if-linked-list-contains-loops-cycle-cyclic-circular-check.html
6. 如何反转链表? 答案:http://www.java67.com/2016/07/how-to-reverse-singly-linked-list-in-java-example.html
7. 如何找到单链表中的倒数第三个节点? 答案:http://javarevisited.blogspot.sg/2016/07/how-to-find-3rd-element-from-end-in-linked-list-java.html
8. 如何使用栈计算两个链表的和? 答案:https://www.geeksforgeeks.org/sum-of-two-linked-lists/
9. 如何在适当的位置反转链表? 答案:http://www.java67.com/2017/06/5-difference-between-array-and-linked.html
10. 如何移除链表中的倒数第N个节点? 答案:https://leetcode.com/problems/remove-nth-node-from-end-of-list/solution/
11. 如何合并两个排序的链表?
12. 如何在链表中添加元素?
13. 如何在Java中实现链表排序? 答案:http://www.java67.com/2016/02/how-to-sort-linkedlist-in-java-example.html
14. 数组和链表有什么区别?
15. 如何将排序列表转化为二分查找树? 答案:https://leetcode.com/problems/convert-sorted-list-to-binary-search-tree/solution/
16. 给定一个链表和一个特定值 x,对链表进行分隔,使得所有小于 x 的节点都在大于或等于 x 的节点之前。 答案:https://leetcode.com/problems/partition-list/solution/
17. 如何在整数链表中删除所有与给定值相等的节点?
18. 如何找到两个单链表相交的起始节点? 答案:https://leetcode.com/problems/intersection-of-two-linked-lists/solution/
19. 如何判断一个链表是否是回文结构?
20. 如何从排序链表中删除重复项? 答案:https://leetcode.com/problems/remove-duplicates-from-sorted-list/solution/
以上是关于20道链表问题的主要内容,如果未能解决你的问题,请参考以下文章
[11道链表经典笔试题]优化的算法思想:反转链表链表相交快慢指针