牛客网高频算法系列-BM4-Mergetwosortedlinkedlists标题描述输入两个递增链表,单个链表的长度为n,合并两个链表,并保持新链表中的节点仍然按升序排列。数据范围:0<=n<=1000,-1000<=节点值<=1000要求:空间复杂度O(1),时间复杂度O(n)见原题:BM4Mergetwosortedlinkedlistsolution1:Linked链表遍历首先判断特殊情况,如果链表1为空,直接返回链表2;如果链表2为空,则直接返回链表1。否则,先声明一个新的假头节点,然后遍历链表1和链表2,过程如下:如果链表1为空,则直接连接链表2剩余节点向后,终止遍历如果链表2为空,直接将链表1剩余节点向后连接,终止遍历;否则,比较链表1和链表2当前节点的大小,判断下一个节点,然后处理下一个节点,最后返回合并后的链表。codepublicclassBm004{/***合并两个排序好的链表**@paramlist1链表一*@paramlist2链表二*@return*/publicstaticListNodemerge(ListNodelist1,ListNodelist2){//如果链接链表一如果为空,直接返回链表二if(list1==null){returnlist2;}//如果链表2为空,直接返回链表1if(list2==null){returnlist1;}//声明一个新的false头节点ListNodenewList=newListNode(-1),next=newList;//遍历链表1和链表2while(list1!=null||list2!=null){if(list1==null){//如果链表1为空,直接连接链表2的剩余节点到后面,终止遍历next.next=list2;休息;}elseif(list2==null){//如果链表2为空,则直接将链表剩余的节点连接到后面,遍历终止next.next=list1;休息;}elseif(list1.val
