博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
剑指offer17 合并两个排序的链表
阅读量:5139 次
发布时间:2019-06-13

本文共 793 字,大约阅读时间需要 2 分钟。

错误代码:

最后两个if语句的目的是,最后一次迭代,两个链表中剩下的直接连接最后一次比较的数值,同时也是迭代停止的标志。虽然大if语句中比较大小得到的Node是正确的值,但每次迭代只要pHead2不为NULL都要改变正确的Node值为pHead2的值。

class Solution {public:    ListNode* Merge(ListNode* pHead1, ListNode* pHead2)    {        ListNode* Node = NULL;        if(pHead1 != NULL && pHead2 != NULL){            if(pHead1->val < pHead2->val){                Node = pHead1;                Node->next = Merge(pHead1->next,pHead2);            }            else{                Node = pHead2;                Node->next = Merge(pHead1,pHead2->next);            }        }        if(pHead1 != NULL)            Node = pHead1;        if(pHead2 != NULL)            Node = pHead2;        return Node;    }}; 测试用例: {1,3,5},{2,4,6} 对应输出应该为: {1,2,3,4,5,6} 你的输出为: {2,4,6}

 

转载于:https://www.cnblogs.com/ymjyqsx/p/6885966.html

你可能感兴趣的文章
CrashHandler实例
查看>>
XMPP框架的分析、导入及问题解决
查看>>
bootstrap用法小计
查看>>
8.QList QMap QVariant
查看>>
Python学习第二十一节(继承顺序,super)
查看>>
Word2016怎么和mathtype兼容
查看>>
[文章备份]本站有自建KMS用于激活Windows/Office
查看>>
【HeadFirst 设计模式学习笔记】21 备忘录(Memento)模式拾零
查看>>
Java实现单向链表反转
查看>>
【原创】MapReduce程序如何在集群上执行
查看>>
Bean进行操作的相关工具方法
查看>>
Struts2学习笔记 - Part.01
查看>>
转载->C#中的委托的使用和讲解
查看>>
WMS
查看>>
基于mykernel完成多进程的简单内核
查看>>
Python入门 值内存管理与所有的关键字
查看>>
Python 之类型转换
查看>>
nginx的access_log与error_log(三)
查看>>
Activity常见控件三——progressBar
查看>>
[LeetCode] Binary Search Tree Iterator
查看>>