程式設計師面試金典 面試題 01 07 旋轉矩陣

2022-08-29 17:06:19 字數 833 閱讀 1351

給你一幅由 n × n 矩陣表示的影象,其中每個畫素的大小為 4 位元組。請你設計一種演算法,將影象旋轉 90 度。

不占用額外記憶體空間能否做到?

示例 1:

給定 matrix = 

[ [1,2,3],

[4,5,6],

[7,8,9]

],原地旋轉輸入矩陣,使其變為:

[ [7,4,1],

[8,5,2],

[9,6,3]

]

示例 2:

給定 matrix =

[ [ 5, 1, 9,11],

[ 2, 4, 8,10],

[13, 3, 6, 7],

[15,14,12,16]

], 原地旋轉輸入矩陣,使其變為:

[ [15,13, 2, 5],

[14, 3, 4, 1],

[12, 6, 8, 9],

[16, 7,10,11]

]

本題同【leetcode】48. 旋轉影象

外圈迴圈次數:n/2

每圈迴圈旋轉四個矩形

時間複雜度:o(n^2)

空間複雜度:o(1)

class solution }}

};

時間複雜度:o(n^2)

空間複雜度:o(1)

class solution 

}for (int i = 0; i < n; ++i)

}

}};

程式設計師面試金典 面試題 01 07 旋轉矩陣

給定一幅由n n矩陣表示的影象,其中每個畫素的大小為4位元組,編寫一種方法,將影象旋轉90度。不占用額外記憶體空間能否做到?示例 1 給定 matrix 1,2,3 4,5,6 7,8,9 原地旋轉輸入矩陣,使其變為 7,4,1 8,5,2 9,6,3 示例 2 給定 matrix 5,1,9,11...

程式設計師面試金典 面試題 08 09 括號

括號。設計一種演算法,列印n對括號的所有合法的 例如,開閉一一對應 組合。說明 解集不能包含重複的子集。例如,給出 n 3,生成結果為 dfs搜尋,如果當前左括號用超了,右括號用超了,或者右括號的數量大於左括號的數量直接返回。而如果左右括號剛好用盡,代表生成乙個結果,記錄下來。然後就是遞迴,新增左括...

程式設計師面試金典 面試題 08 13 堆箱子

堆箱子。給你一堆n個箱子,箱子寬 wi 高hi 深di。箱子不能翻轉,將箱子堆起來時,下面箱子的寬度 高度和深度必須大於上面的箱子。實現一種方法,搭出最高的一堆箱子。箱堆的高度為每個箱子高度的總和。輸入使用陣列 wi,di,hi 表示每個箱子。示例1 輸入 box 1,1,1 2,2,2 3,3,3...