合并两有序链表(创建一个头节点(new ListNode(0)))

合并两个排序的链表

http://www.nowcoder.com/questionTerminal/d8b6b4358f774294a89de2a6ac4d9337

class Solution {
public:
    ListNode* Merge(ListNode* pHead1, ListNode* pHead2) {
       ListNode *head=new ListNode(0);//创建一个头结点,归一化操作,否则第一个加入的节点还要单独做。
       ListNode *p=head;//两个指针一个指向头结点,一个指向尾节点。
       while(pHead1&&pHead2){
            if(pHead1->val<pHead2->val)
            {
                p->next=pHead1;//p链接值小的指针
                pHead1=pHead1->next;//链表头节点后移。
            }else{
                p->next=pHead2;
                pHead2=pHead2->next;
            }
           p=p->next;//重新指向尾节点
       }
       p->next=pHead1?pHead1:pHead2;
       return head->next;
    }
};
全部评论

相关推荐

01-05 09:14
同济大学 Java
心碎一号线:我要是9✌🏻我就选保研,保研了大四再找实习,实习之后,如果觉得自己不适合互联网工作模式,还能有其他选择,如果实习后决定了走互联网,也能提升学历提高竞争力
点赞 评论 收藏
分享
程序员花海:实习和校招简历正确格式应该是教育背景+实习+项目经历+个人评价 其中项目经历注意要体现业务 实习经历里面的业务更是要自圆其说 简历模板尽可能保持干净整洁 不要太花哨的
点赞 评论 收藏
分享
评论
2
3
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务