給你乙個m
行n
列的矩陣matrix
,請按照 順時針螺旋順序 ,返回矩陣中的所有元素。
正解:
classsolution:
def spiralorder(self, matrix: list[list[int]]) ->list[int]:
ifnot
matrix:
return
m, n = len(matrix), len(matrix[0]) #
行,列 res=
i,j=0,-1ju=1
while m > 0 and n >0:
for x in
range(n):
j+=ju
#向右走
for y in range(m-1):#
向下走,這裡要注意,0開頭的往下走只能走m-1
i+=ju
m=m-1n=n-1ju*=-1
return
res
#1. 橫向遍歷m,縱向遍歷n-1;
#2. 橫向遍歷m-1,縱向遍歷n-2;
#3. 橫向遍歷m-2,縱向遍歷n-3;
#4. 直到有一方向遍歷長度為0時終止。
每日一題 力扣 計畫
98 驗證二叉搜尋樹 問題給定乙個二叉樹,判斷其是否是乙個有效的二叉搜尋樹。假設乙個二叉搜尋樹具有如下特徵 1.節點的左子樹只包含小於當前節點的數。2.節點的右子樹只包含大於當前節點的數。3.所有左子樹和右子樹自身必須也是二叉搜尋樹。示例 1 輸入 2 1 3 輸出 true示例2 輸入 5 1 4...
力扣每日一題 6 14
1300 轉變陣列後最接近目標值的陣列和 給你乙個整數陣列 arr 和乙個目標值 target 請你返回乙個整數 value 使得將陣列中所有大於 value 的值變成 value 後,陣列的和最接近 target 最接近表示兩者之差的絕對值最小 如果有多種使得和最接近 target 的方案,請你返...
每日一題力扣48
給定乙個 n n 的二維矩陣 matrix 表示乙個影象。請你將影象順時針旋轉 90 度。你必須在 原地 旋轉影象,這意味著你需要直接修改輸入的二維矩陣。請不要 使用另乙個矩陣來旋轉影象。正解 旋轉90度就是,先鏡面對稱,再轉置即可 class solution defrotate self,mat...