两个有序单链表的合并

Java实现两个有序单链表的合并

两个有序链表合并时,首先新建一个链表,存储最终的结果。

分情况讨论合并的方式:1.两个链表循环都没有到头时,如果链表一的值小于链表二的值则将链表一的值添加到新的链表中,并将链表一的节点迭代一次;反之,将链表二的值添加到新的链表中,将链表二的节点迭代一次。2.如果链表一没到头,而链表二到头了,需要继续循环链表一,将其数据放到新链表中。3.同理,链表二没有到头,链表一到头了,需要继续循环链表二,将其数据放到新链表中。最后返回新的链表。

格外注意:上面三种情况的分类,不能用 first!=null || second!=null替代,因为任意一个链表到头,first或second为null时,first.data会出现空指针异常。还有,泛型的大小比较需要使用compareTo方法,使用此方法的前提是需要实现Comparable接口。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 转载请注明出处:http://www.jianshu.com/p/c65d9d753c31 在上一篇博客《数据结构...
    Alent阅读 3,541评论 4 74
  • 每一天都在重复的过,徘徊在生活和工作之中,我是想过自己的日子,羡慕别人的工资房子,因为高工资和房子我都没有,也不知...
    幸运星新阅读 153评论 0 0
  • 见闻不是百晓生的客栈文章链接 文字是有情绪的,所以站在读者的角度上,老猫一点都不奇怪自己用“犟”这个词来形容509...
    老猫枕咸鱼阅读 329评论 20 8
  • 人像卡(三张):补充句子,我这样做的时候是想说…… 注:这样做,是指你的一个行为,有一个行为是你真的受不了的,一直...
    兮兮AX阅读 188评论 0 0