Merge k Sorted Arrays

来源:互联网 发布:什么变声软件好 编辑:程序博客网 时间:2024/05/16 07:08

Given k sorted integer arrays, merge them into one sorted array.

Example

Given 3 sorted arrays:

[  [1, 3, 5, 7],  [2, 4, 6],  [0, 8, 9, 10, 11]]

return [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11].

java

public class Solution {    /*     * @param arrays: k sorted integer arrays     * @return: a sorted array     */    public int[] mergekSortedArrays(int[][] arrays) {        // write your code here        Queue<Integer> queue = new PriorityQueue<>();        for (int i = 0; i < arrays.length; i++) {            for (int j = 0; j < arrays[i].length; j++) {                queue.offer(arrays[i][j]);            }        }        int[] arr = new int[queue.size()];        for (int i = 0; i < arr.length; i++) {            arr[i] = queue.poll();        }        return arr;    }}

python

import heapqclass Solution:    """    @param: arrays: k sorted integer arrays    @return: a sorted array    """    def mergekSortedArrays(self, arrays):        # write your code here        h = []        for ele in arrays:            h += ele        h.sort()        return h


原创粉丝点击