美文网首页
leetcode的题目21

leetcode的题目21

作者: 二木二三水 | 来源:发表于2018-06-04 23:23 被阅读0次

    合并两个有序链表

    将两个有序链表合并为一个新的有序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。

    示例:

    输入:1->2->4, 1->3->4

    输出:1->1->2->3->4->4

    我的思路:定义一个新链表l3和p1,p2,p3分别指向l1,l2,l3三个链表,先判断l1,l2两个链表是否为空的情况,如果两个都为空,则返回l1(或l2);如果l1为空,l2非空,则直接返回l2;同理,如果l2为空,l1非空,则直接返回l1;当l1与l2都为非空时再进行下一步处理。

    下一步处理:如果l1与l2还存在节点(即不为空),就将l1与l2的第一个节点判断大小,将较小的节点放进l3链表,如果l1为空了(即l1已经将全部节点都放进l3了),就将l2的节点依次放进l3;如果l2为空,同理执行。最后返回l3->next

    相关文章

      网友评论

          本文标题:leetcode的题目21

          本文链接:https://www.haomeiwen.com/subject/xpeusftx.html