栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

java打印有序链表的公共部分

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

java打印有序链表的公共部分

【题目】
给定2个有序链表的头指针head1和head2,打印两个链表的公共部分
【要求】
两个量表总长度为N,时间复杂度为O(N),二娃空间复杂度O(1)

public class Node{
    public  int value;
    public  Node next;

    public Node(int value) {
        this.value = value;
    }
}
private void printCommonPart(Node head1, Node head2){
	if(null == head1 || null == head2){
		return;
	}
	System.out.print("common part: ");
	while (head1 != null && head2 != null){
      if (head1.value > head2.value){
           head2 = head2.next;
       } else if(head2.value > head1.value){
           head1 = head1.next;
       } else {
           System.out.print(head1.value + " ");
           head1 = head1.next;
           head2 = head2.next;
       }
   }
}

方法很简单,思路也很简单,依次对比,哪个值小就往前进一步,一样大,打印,一起向前进一步。不会的,代码多敲几遍就会了

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/325440.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号