Leetcode21 合并两个有序链表

/**

* Definition for singly-linked list.

* struct ListNode {

* int val;

* ListNode *next;

* ListNode() : val(0), next(nullptr) {}

* ListNode(int x) : val(x), next(nullptr) {}

* ListNode(int x, ListNode *next) : val(x), next(next) {}

* };

*/

bool comparision(int a,int b)

{

return a<b;

}

class Solution {

public:

ListNode* mergeTwoLists(ListNode* list1, ListNode* list2) {

//子集为空

if(list1 ==nullptr || list2 ==nullptr)

{

cout<<"[]"<<endl;

}

ListNode* tempnode = new ListNode();

ListNode* TotalNode = tempnode;//指向第一个元素

//两个几集合都有元素

while((list1!=nullptr )&&(list2!=nullptr))

{

//比较指针的元素大小

if(list1->val < list2->val)

{

tempnode->next= list1;

list1 = list1->next;

}

else

{

tempnode->next = list2;

list2 = list2->next;

}

tempnode = tempnode->next;

}

//其中一个子集为空

tempnode->next = list1==nullptr?list2:list1;

return TotalNode->next;

}

};

相关推荐
网易独家音乐人Mike Zhou3 小时前
【卡尔曼滤波】数据预测Prediction观测器的理论推导及应用 C语言、Python实现(Kalman Filter)
c语言·python·单片机·物联网·算法·嵌入式·iot
‘’林花谢了春红‘’4 小时前
C++ list (链表)容器
c++·链表·list
机器视觉知识推荐、就业指导6 小时前
C++设计模式:建造者模式(Builder) 房屋建造案例
c++
朝九晚五ฺ6 小时前
【Linux探索学习】第十四弹——进程优先级:深入理解操作系统中的进程优先级
linux·运维·学习
Swift社区7 小时前
LeetCode - #139 单词拆分
算法·leetcode·职场和发展
Kent_J_Truman7 小时前
greater<>() 、less<>()及运算符 < 重载在排序和堆中的使用
算法
猫爪笔记8 小时前
前端:HTML (学习笔记)【1】
前端·笔记·学习·html
IT 青年8 小时前
数据结构 (1)基本概念和术语
数据结构·算法
Yang.998 小时前
基于Windows系统用C++做一个点名工具
c++·windows·sql·visual studio code·sqlite3