【LeetCode】将一维数组转变成二维数组 Java 题解
题目描述
给你一个下标从 0 开始的一维整数数组 original 和两个整数 m 和 n 。你需要使用 original 中 所有 元素创建一个 m 行 n 列的二维数组。
original 中下标从 0 到 n - 1 (都 包含 )的元素构成二维数组的第一行,下标从 n 到 2 * n - 1 (都 包含 )的元素构成二维数组的第二行,依此类推。
请你根据上述过程返回一个 m x n 的二维数组。如果无法构成这样的二维数组,请你返回一个空的二维数组。
复制代码
思路分析
今天的算法每日一题是数组转化题目,题目要求下标从 0 开始的一维整数数组 original 和两个整数 m 和 n 。你需要使用 original 中 所有 元素创建一个 m 行 n 列的二维数组。
题意简单明了,我们直接根据题目写代码就可以了。需要注意的是,测试用例中有非法数据,我们需要做特殊判断处理,具体实现代码如下。
通过代码
复制代码
总结
上述算法的时间复杂度是 O(m * n),空间复杂度是 O(1)
坚持算法每日一题,加油!
版权声明: 本文为 InfoQ 作者【HQ数字卡】的原创文章。
原文链接:【http://xie.infoq.cn/article/9251cc225bda11363b469f41b】。文章转载请联系作者。
评论