1. // 两个指针分别指向两个链表,谁小谁移动,当相等的时候打印,然后共同移动,有一个越界了停。
    2. public static void PrintCommonList(Node head1,Node head2){
    3. Node p1 = head1; // 链表1指针
    4. Node p2 = head2; // 链表2指针
    5. while(p1.next !=null && p2.next!=null){
    6. // 相等同时p1、p2移动
    7. if(p1.value == p2.value){
    8. System.out.println(p1.value);
    9. p1 = p1.next;
    10. p2 = p2.next;
    11. }
    12. // p1<p2 p1移动
    13. if(p1.value < p2.value && p1.next!=null){
    14. p1 = p1.next;
    15. }
    16. // p2<p1 p2移动
    17. if(p1.value > p2.value && p2.next!=null){
    18. p2 = p2.next;
    19. }
    20. }
    21. }