最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

算法:順時(shí)針打印矩陣

2022-08-05 17:36 作者:做架構(gòu)師不做框架師  | 我要投稿


輸入一個(gè)矩陣,按照從外向里以順時(shí)針的順序依次打印出每一個(gè)數(shù)字。

示例

  • 輸入:matrix = [[1,2,3,4],[5,6,7,8],[9,10,11,12]]

  • 輸出:[1,2,3,4,8,12,11,10,9,5,6,7]

限制

  • 0 <= matrix.length <= 100

  • 0 <= matrix[i].length <= 100

方法:按層模擬

對(duì)于本題,我們可以按照“按層模擬”的思路去實(shí)現(xiàn),如下圖所示:

算法流程:

  • 特例終止條件:如果矩陣為空,直接返回空數(shù)組;

  • 確定第一層的上下左右四個(gè)起始點(diǎn);

  • 初始化長(zhǎng)度為矩陣長(zhǎng)度的結(jié)果數(shù)組,并初始化一個(gè)自增值,用于動(dòng)態(tài)賦值;

  • 逐層遍歷:

    • 從左到右依次從(top,left)到(top,right);

    • 從上到下依次從(top+1,right)到(bottom,right);

    • 如果 left < right 并且 top < bottom時(shí), 從右到左依次從(bottom,right-1)到(bottom,left+1);

    • 如果 left < right 并且 top < bottom時(shí),從下到上依次從(bottom,left)到(top+1,left);

  • left 加一,right 減一,top 加一,bottom 減一,進(jìn)入下一層按上述步驟遍歷;

  • 返回結(jié)果數(shù)組。


代碼如下:

復(fù)雜度分析

  • 時(shí)間復(fù)雜度:O(mn),其中 m 和 n 分別是輸入矩陣的行數(shù)和列數(shù)。矩陣中的每個(gè)元素都要被訪問一次。

  • 空間復(fù)雜度:O(1)。除了輸出數(shù)組以外,空間復(fù)雜度是常數(shù)。

END

好兄弟可以點(diǎn)贊并關(guān)注我的公眾號(hào)“javaAnswer”,全部都是干貨。


算法:順時(shí)針打印矩陣的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
扶余县| 晴隆县| 漳浦县| 全南县| 台北县| 从化市| 东方市| 甘孜| 交城县| 固镇县| 呼伦贝尔市| 尚志市| 临西县| 乐业县| 绥德县| 平舆县| 宜川县| 永康市| 中宁县| 郸城县| 五寨县| 南昌市| 阳曲县| 永靖县| 句容市| 吉木萨尔县| 十堰市| 乡宁县| 额尔古纳市| 韩城市| 赞皇县| 罗甸县| 乌鲁木齐县| 尼玛县| 读书| 忻州市| 大洼县| 枣阳市| 台山市| 凤山市| 金塔县|