1424. Diagonal Traverse II

Difficulty:
Related Topics:
Similar Questions:

    Problem

    Given a 2D integer array nums, return **all elements of *nums* in diagonal order as shown in the below images**.

      Example 1:

    Input: nums = [[1,2,3],[4,5,6],[7,8,9]]
    Output: [1,4,2,7,5,3,8,6,9]
    

    Example 2:

    Input: nums = [[1,2,3,4,5],[6,7],[8],[9,10,11],[12,13,14,15,16]]
    Output: [1,6,2,8,7,3,9,4,12,10,5,13,11,14,15,16]
    

      Constraints:

    Solution

    /**
     * @param {number[][]} nums
     * @return {number[]}
     */
    var findDiagonalOrder = function(nums) {
        var groups = [];
        for (var i = nums.length - 1 ; i >= 0; i--) {
            for (var j = 0; j < nums[i].length; j++) {
                groups[i + j] = groups[i + j] || [];
                groups[i + j].push(nums[i][j]);
            }
        }
        return [].concat(...groups);
    };
    

    Explain:

    nope.

    Complexity: