这篇文章包含的链表面试题如下:
1、从尾到头打印单向链表
2、查找单向链表中的倒数第k个节点
3、反转一个单向链表【出现频率较高】
4、合并两个有序的单向链表,合并之后的链表依然有序【出现频率较高】
5、找出两个单向链表相交的第一个公共节点
前期代码准备:
下面这两个类的详细解析可以参考我的上一篇文章:数据结构3 线性表之链表
节点类:Node.java
/** * 节点类 */ public class Node { Object element; // 数据域 Node next; // 地址域 // 节点的构造方法 public Node(Object element, Node next) { this.element = element; this.next = next; } // Gettet and Setter public Node getNext() { return this.next; } public void setNext(Node next) { this.next = next; } public Object getElement() { return this.element; } public void setElement(Object element) { this.element = element; } }