摘要:題目要求也就是將遞加的數(shù)字按照順時(shí)針的順序依次填入數(shù)組之中這道題目聯(lián)系到,其實(shí)就相當(dāng)好解決了。
題目要求
Given an integer n, generate a square matrix filled with elements from 1 to n2 in spiral order. For example, Given n = 3, You should return the following matrix: [ [ 1, 2, 3 ], [ 8, 9, 4 ], [ 7, 6, 5 ] ]
也就是將遞加的數(shù)字按照順時(shí)針的順序依次填入數(shù)組之中
這道題目聯(lián)系到Spiral Matrix I,其實(shí)就相當(dāng)好解決了。Spiral Matrix I可以參考我的這篇博客
具體代碼在參考完這篇博客后,就會(huì)發(fā)現(xiàn),這里其實(shí)就是將讀取數(shù)據(jù)反過(guò)來(lái)改為填入數(shù)據(jù),代碼如下:
public int[][] generateMatrix(int n) { int[][] result = new int[n][n]; int rowStart = 0; int rowEnd = n-1; int colStart = 0; int colEnd = n-1; int number = 1; while(rowStart<=rowEnd && colStart<=colEnd){ for(int i = colStart ; i<=colEnd ; i++){ result[rowStart][i] = number; number++; } rowStart++; for(int i = rowStart ; i<=rowEnd ; i++){ result[i][colEnd] = number; number++; } colEnd--; if(rowStart <= rowEnd){ for(int i = colEnd ; i>=colStart ; i--){ result[rowEnd][i] = number; number++; } } rowEnd--; if(colStart<= colEnd){ for(int i = rowEnd ; i>= rowStart ; i--){ result[i][colStart] = number; number++; } } colStart++; } return result; }
想要了解更多開(kāi)發(fā)技術(shù),面試教程以及互聯(lián)網(wǎng)公司內(nèi)推,歡迎關(guān)注我的微信公眾號(hào)!將會(huì)不定期的發(fā)放福利哦~
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/70150.html
摘要:代碼添加該圈第一行添加最后一列添加最后一行添加第一列如果是奇數(shù),加上中間那個(gè)點(diǎn)后續(xù)如果在中,給出的是和來(lái)代表行數(shù)和列數(shù),該如何解決和的本質(zhì)區(qū)別就是一個(gè)是任意長(zhǎng)方形,一個(gè)是正方形,所以中不需要判斷最后一行或者最后一列。 Spiral Matrix I Given a matrix of m x n elements (m rows, n columns), return all ele...
摘要:如果不在前兩個(gè)循環(huán)之后的話(huà),那么那多余的一行或一列就會(huì)被加入數(shù)組兩次,造成錯(cuò)誤的結(jié)果。解法和一樣,只是簡(jiǎn)化了,甚至可以用一樣的方法去做,只要把也換成。使用,以及最后討論是否為奇數(shù)以判斷中間是否有一個(gè)未循環(huán)的點(diǎn),是這道題的兩個(gè)有趣的地方。 Spiral Matrix I Problem Given a matrix of m x n elements (m rows, n columns...
摘要:復(fù)雜度思路注意循環(huán)條件。代碼注意循環(huán)條件,要用而不是除以,因?yàn)榫葴?zhǔn)換問(wèn)題只有一行或者一列的時(shí)候,就不要再繼續(xù)搜索了 LeetCode[54] Spiral Matrix Given a matrix of m x n elements (m rows, n columns), return all elements of the matrix in spiral order. Fo...
摘要:螺旋矩陣給定一個(gè)包含個(gè)元素的矩陣行列,請(qǐng)按照順時(shí)針螺旋順序,返回矩陣中的所有元素。每次轉(zhuǎn)向或都會(huì)自減。循環(huán)可操作性很高,可以直接操作索引坐標(biāo)改變遍歷方式,不再贅述。 54:Spiral Matrix 螺旋矩陣 Given a matrix of m x n elements (m rows, n columns), return all elements of the matrix i...
摘要:螺旋矩陣給定一個(gè)包含個(gè)元素的矩陣行列,請(qǐng)按照順時(shí)針螺旋順序,返回矩陣中的所有元素。每次轉(zhuǎn)向或都會(huì)自減。循環(huán)可操作性很高,可以直接操作索引坐標(biāo)改變遍歷方式,不再贅述。 54:Spiral Matrix 螺旋矩陣 Given a matrix of m x n elements (m rows, n columns), return all elements of the matrix i...
閱讀 1074·2021-11-24 09:39
閱讀 1307·2021-11-18 13:18
閱讀 2425·2021-11-15 11:38
閱讀 1824·2021-09-26 09:47
閱讀 1625·2021-09-22 15:09
閱讀 1624·2021-09-03 10:29
閱讀 1510·2019-08-29 17:28
閱讀 2951·2019-08-29 16:30