mirror of
https://gitee.com/coder-xiaomo/leetcode-problemset
synced 2025-01-10 18:48:13 +08:00
34 lines
1.5 KiB
HTML
34 lines
1.5 KiB
HTML
<p>In MATLAB, there is a handy function called <code>reshape</code> which can reshape an <code>m x n</code> matrix into a new one with a different size <code>r x c</code> keeping its original data.</p>
|
|
|
|
<p>You are given an <code>m x n</code> matrix <code>mat</code> and two integers <code>r</code> and <code>c</code> representing the number of rows and the number of columns of the wanted reshaped matrix.</p>
|
|
|
|
<p>The reshaped matrix should be filled with all the elements of the original matrix in the same row-traversing order as they were.</p>
|
|
|
|
<p>If the <code>reshape</code> operation with given parameters is possible and legal, output the new reshaped matrix; Otherwise, output the original matrix.</p>
|
|
|
|
<p> </p>
|
|
<p><strong class="example">Example 1:</strong></p>
|
|
<img alt="" src="https://assets.leetcode.com/uploads/2021/04/24/reshape1-grid.jpg" style="width: 613px; height: 173px;" />
|
|
<pre>
|
|
<strong>Input:</strong> mat = [[1,2],[3,4]], r = 1, c = 4
|
|
<strong>Output:</strong> [[1,2,3,4]]
|
|
</pre>
|
|
|
|
<p><strong class="example">Example 2:</strong></p>
|
|
<img alt="" src="https://assets.leetcode.com/uploads/2021/04/24/reshape2-grid.jpg" style="width: 453px; height: 173px;" />
|
|
<pre>
|
|
<strong>Input:</strong> mat = [[1,2],[3,4]], r = 2, c = 4
|
|
<strong>Output:</strong> [[1,2],[3,4]]
|
|
</pre>
|
|
|
|
<p> </p>
|
|
<p><strong>Constraints:</strong></p>
|
|
|
|
<ul>
|
|
<li><code>m == mat.length</code></li>
|
|
<li><code>n == mat[i].length</code></li>
|
|
<li><code>1 <= m, n <= 100</code></li>
|
|
<li><code>-1000 <= mat[i][j] <= 1000</code></li>
|
|
<li><code>1 <= r, c <= 300</code></li>
|
|
</ul>
|