关注
public int[] mergekSortedArrays(int[][] arrays) {
List<Integer> res = new ArrayList<>();
int high = arrays.length;
Queue<int[]> queue = new PriorityQueue<>(high, Comparator.comparingInt(o -> o[0]));
for (int i = 0; i < high; i++) {
if (arrays[i].length == 0) continue;
int[] node = new int[3];
node[0] = arrays[i][0];
node[1] = i;
// node[2] = 0;
queue.offer(node);
}
while (!queue.isEmpty()) {
int[] cur = queue.poll();
res.add(cur[0]);
// 结点到达当前数组的最后一位
int arrayIndex = cur[1], index = cur[2];
if (index == arrays[arrayIndex].length - 1) continue;
cur[0] = arrays[arrayIndex][index + 1];
// cur[1] = arrayIndex;
cur[2] = index + 1;
queue.offer(cur);
}
return res.isEmpty() ? new int[0] : res.stream().mapToInt(value -> value).toArray();
}
查看原帖
点赞 1
相关推荐
查看23道真题和解析 点赞 评论 收藏
分享
01-21 20:23
Miami University 前端工程师 点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 在大厂上班是一种什么样的体验 #
6170次浏览 84人参与
# 机械人避雷的岗位/公司 #
41595次浏览 275人参与
# 程序员找工作至少要刷多少题? #
11403次浏览 182人参与
# 过年最难忘的一件事 #
22973次浏览 174人参与
# 我现在比当时_,你想录用我吗 #
4835次浏览 78人参与
# 为了减少AI幻觉,你注入过哪些设定? #
2334次浏览 89人参与
# 12306一秒售罄,你抢到回家的票了吗? #
921次浏览 27人参与
# 牛客AI体验站 #
4235次浏览 127人参与
# AI Coding的使用心得 #
3118次浏览 88人参与
# 找工作的破防时刻 #
252773次浏览 1960人参与
# 刚入职的你踩过哪些坑 #
5008次浏览 104人参与
# 一张图晒一下你的AI员工 #
3474次浏览 81人参与
# 你最满意的offer薪资是哪家公司? #
69390次浏览 348人参与
# 论秋招对个人心气的改变 #
6709次浏览 115人参与
# 关于春招/暑期实习,你想知道哪些信息? #
4960次浏览 89人参与
# 机械人你知道哪些单休企业 #
85235次浏览 428人参与
# 程序员能干到多少岁? #
6472次浏览 97人参与
# 黄金这个事上,你学到了什么 #
1138次浏览 34人参与
# 晒晒你司的新年福利 #
4939次浏览 78人参与
# 大家实习每天都在干啥 #
119196次浏览 627人参与
OPPO公司福利 1091人发布