public class Main {
public static ListNode MergeList(ListNode l1,ListNode l2)
{
ListNode listNode=new ListNode();
ListNode temp=listNode;
while(l1!=null&&l2!=null)
{
if(l1.val<l2.val)
{
temp.next=l1;
temp=temp.next;
l1=l1.next;
}
else
{
temp.next=l2;
temp=temp.next;
l2=l2.next;
}
}
if(l1!=null)
temp.next=l1;
if(l2!=null)
temp.next=l2;
return listNode.next;
}
//最笨的方法来测试
public static void main(String[] args) {
ListNode node1=new ListNode(1);
ListNode node2=new ListNode(2);
ListNode node3=new ListNode(3);
node1.next=node2; node2.next=node3;
ListNode node4=new ListNode(4);
ListNode node5=new ListNode(5);
ListNode node6=new ListNode(6);
node4.next=node5; node5.next=node6;
ListNode res=MergeList(node1,node4);
for (int i = 0; i < 6; i++) { //遍历输出
System.out.println(res);
res=res.next;
}
}
}
//节点的定义
class ListNode{
public ListNode next;
public int val;
public ListNode()
{
}
public ListNode(int val)
{
this.val=val;
}
@Override
public String toString() {
return "ListNode{" +
"val=" + val +
'}';
}
}
合并两个有序链表
于 2022-08-03 17:38:12 首次发布