摘要:題目要求也就是將遞加的數(shù)字按照順時針的順序依次填入數(shù)組之中這道題目聯(lián)系到,其實就相當好解決了。
題目要求
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ù)組之中
這道題目聯(lián)系到Spiral Matrix I,其實就相當好解決了。Spiral Matrix I可以參考我的這篇博客
具體代碼在參考完這篇博客后,就會發(fā)現(xiàn),這里其實就是將讀取數(shù)據(jù)反過來改為填入數(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; }
想要了解更多開發(fā)技術(shù),面試教程以及互聯(lián)網(wǎng)公司內(nèi)推,歡迎關(guān)注我的微信公眾號!將會不定期的發(fā)放福利哦~
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/70150.html
摘要:代碼添加該圈第一行添加最后一列添加最后一行添加第一列如果是奇數(shù),加上中間那個點后續(xù)如果在中,給出的是和來代表行數(shù)和列數(shù),該如何解決和的本質(zhì)區(qū)別就是一個是任意長方形,一個是正方形,所以中不需要判斷最后一行或者最后一列。 Spiral Matrix I Given a matrix of m x n elements (m rows, n columns), return all ele...
摘要:如果不在前兩個循環(huán)之后的話,那么那多余的一行或一列就會被加入數(shù)組兩次,造成錯誤的結(jié)果。解法和一樣,只是簡化了,甚至可以用一樣的方法去做,只要把也換成。使用,以及最后討論是否為奇數(shù)以判斷中間是否有一個未循環(huán)的點,是這道題的兩個有趣的地方。 Spiral Matrix I Problem Given a matrix of m x n elements (m rows, n columns...
摘要:復(fù)雜度思路注意循環(huán)條件。代碼注意循環(huán)條件,要用而不是除以,因為精度準換問題只有一行或者一列的時候,就不要再繼續(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...
摘要:螺旋矩陣給定一個包含個元素的矩陣行列,請按照順時針螺旋順序,返回矩陣中的所有元素。每次轉(zhuǎn)向或都會自減。循環(huán)可操作性很高,可以直接操作索引坐標改變遍歷方式,不再贅述。 54:Spiral Matrix 螺旋矩陣 Given a matrix of m x n elements (m rows, n columns), return all elements of the matrix i...
摘要:螺旋矩陣給定一個包含個元素的矩陣行列,請按照順時針螺旋順序,返回矩陣中的所有元素。每次轉(zhuǎn)向或都會自減。循環(huán)可操作性很高,可以直接操作索引坐標改變遍歷方式,不再贅述。 54:Spiral Matrix 螺旋矩陣 Given a matrix of m x n elements (m rows, n columns), return all elements of the matrix i...
閱讀 1088·2021-11-24 09:39
閱讀 1320·2021-11-18 13:18
閱讀 2462·2021-11-15 11:38
閱讀 1840·2021-09-26 09:47
閱讀 1641·2021-09-22 15:09
閱讀 1634·2021-09-03 10:29
閱讀 1522·2019-08-29 17:28
閱讀 2961·2019-08-29 16:30