题目:
给定两个有序链表的头指针head1和head2,打印两个链表的公共部分
思路:
因为是有序链表,只需要从俩个链表的头开始判断
1、当head1小于head2的时候,head1向后移动
2、当head1大于head2的时候,head2向后移动
3、当head等于head2的时候,打印,head1和head2都向后移动
4、当head1或者head2中任意一个走到null,结束
.
public class test3 { public class Node { private int value; private Node next; public Node (int value){ this.value = value; } } public void printCommonPart(Node head1,Node head2){ while (head1 != null && head2 != null){ if (head1.value < head2.value){ head1 = head1.next; }else if (head1.value > head2.value){ head2 = head2.next; }else if (head1.value == head2.value){ System.out.println(head1.value +""); head1 = head1.next; head2 = head2.next; } } System.out.println(); } }