//
// Created by Mr.Hu on 2018/5/29.
//
// leetcode 21 merge two sorted lists
//
// 题目要求对排序链表进行合并
//
// 刚开始的想法是用一个新的链表来存储两个链表中的所有节点,哪个链表当前节点的值最小则加入进来;
// 但是在执行的过程中遇到一个问题,就是新链表中当前current节点在扩展下一个节点时,会丢弃上一个节点…具体原因不明
// 由于自己对链表擦操作本来就不熟悉,所以去找了别人的方法:
// 原来可以先自己定义一个头节点result,并将地址传递给current然后将其next指针指向来l1和l2中val值较小的节点,
// result用来最后返回链表地址,而current用来表示新加入的节点位置
// 循环完之后,判断l1和l2是否还有剩余的子链表,有的话则将current->next直接执行了或者l2。
// 由于result的头节点是我们自己随意定义的一个,真正开始的位置是头节点的下一个,所以我们返回result->next指针。
//
// 我刚开始的那种想法应该也是可以实现的,只是存在一处bug。但是我把代码给删除了…做其他linked list时再思考。
//
1 |
|