算法 - 链表 - 打印两个有序链表的公共部分

问题二 打印两个有序链表的公共部分

给定两个有序链表的头指针 head1 和 head2,打印两个链表的公共部分。

思路:类似于比较两个有序数组共同具有的有序部分。

public static void printCommonPart(Node head1, Node head2) {
    if (head1 == null || head2 == null) return;
    while (head1 != null && head2 != null) {
    	if (head1.val == head2.val) {
            System.out.print(head1.val + " ");
            head1 = head1.next;
            head2 = head2.next;
        } else if (head1.val < head2.val) {
            head1 = head1.next;
        } else {
            head2 = head2.next;
        }
    }
}
posted @ 2019-11-28 13:33  学习趁早  阅读(290)  评论(0编辑  收藏  举报