当前位置: 首页 > news >正文

leetcode 23.合并k个升序链表

思路:将链表数组中的val元素全部取出来,然后放在数组中进行排序,之后再用一重循环创造结点并连接即可。

注意点:首先,链表数组可能是空的,需要特判;

其次,链表数组中的链表可能是空的,需要特判。

最后,数组在创建的时候不要根据题目的范围创建,需要首先计算出链表数组中的全部元素个数,然后创建相同数目的大小数组。

/**
 * Definition for singly-linked list.
 * public class ListNode {
 *     int val;
 *     ListNode next;
 *     ListNode() {}
 *     ListNode(int val) { this.val = val; }
 *     ListNode(int val, ListNode next) { this.val = val; this.next = next; }
 * }
 */
class Solution {
    public ListNode mergeKLists(ListNode[] lists) {
        if(lists.length<=0)
        return null;
        int k=0;
        int len=0;
        for(int i=0;i<lists.length;i++){
            ListNode t=lists[i];
            while(t!=null){
                len++;
                t=t.next;
            }
        }
        if(len==0)
        return null;
        int []arr=new int[len];
        for(int i=0;i<lists.length;i++){
            ListNode t=lists[i];
            while(t!=null){
                arr[k++]=t.val;
                t=t.next;
            }
        }
        Arrays.sort(arr);
        ListNode head=null;
        head=new ListNode(arr[0]);
        ListNode dummy=head;
        for(int i=1;i<k;i++){
            ListNode tmp=new ListNode(arr[i]);
            head.next=tmp;
            head=head.next;
        }
        return dummy;
    }
}

相关文章:

  • JVM系列(十) -垃圾收集器介绍
  • 面试题.04
  • 【Python】数据可视化之分类图
  • 【Datawhale X 李宏毅苹果书 AI夏令营】《深度学习详解》Task3 打卡
  • EvoSuite使用总结
  • 是谁还不会flink的checkpoint呀~
  • Java传输本地目录到远程服务器
  • WSL 在 Windows 上删除已经安装的 Ubuntu | WSL 再次重装 Ubuntu | cv2.imshow() 弹窗支持
  • Java语言的Netty框架+云快充协议1.5+充电桩系统+新能源汽车充电桩系统源码
  • 基于FreeRTOS的STM32多功能手表
  • Java Spring Boot 项目中的密码加密与验证开发案例手册
  • Redis集群
  • C++11 ---- 右值引用和移动语义
  • SpringBoot依赖之Spring Boot DevTools热部署开发增效工具
  • 【Spring Boot 3】【Web】解析获取HTTP请求参数
  • 2. 卷积神经网络(CNN):图像识别的核心技术
  • MySQL 数据库管理与操作指南
  • k8s集群本地搭建,使用gitlab、harbor、jenkens、cicd来实现devops自动化构建
  • c++中析构函数是否一定要为虚函数
  • 轴承知识大全,详细介绍(附3D图纸免费下载)
  • 夜读丨怀念那个写信的年代
  • 上海灵活就业人员公积金新政有哪些“创新点”?
  • 幸福航空取消“五一”前航班,财务人员透露“没钱飞了”
  • 国家发改委答澎湃:力争6月底前下达2025年两重建设和中央预算内投资全部项目清单
  • 教育强国建设基础教育综合改革试点来了!改什么?怎么改?
  • 持续更新丨伊朗内政部长:港口爆炸已致8人死亡750人受伤