給定乙個含有 m x n 個元素的矩陣(m 行,n 列),請以對角線遍歷的順序返回這個矩陣中的所有元素,對角線遍歷如下圖所示。
示例:
輸入:[ [ 1, 2, 3 ],
[ 4, 5, 6 ],
[ 7, 8, 9 ]
]輸出: [1,2,4,7,5,3,6,8,9]
解釋:
說明:給定矩陣中的元素總數不會超過 100000 。
//章節 - 陣列和字串
//二、二維陣列簡介
//1.對角線遍歷
/*演算法思想:
有類題屬於直觀上很好理解,但是寫起來卻不知如何下手。這題就屬於此類。
這道題好處是給了乙個圖例,而圖例又不像另一種4向(右,左下,下,右上)畫法讓人誤導,而是對角線,方向是右上、左下依次交替。因此,只需確定每條對角線的起點,由起點向右上延伸直到邊界,再根據當前所在的行數判斷是否需要逆序即可。每行的起始點如下:從[0,0]向下延伸到[m-1,0],再向右延伸到[m-1][n-1]
*///
演算法實現:
class
solution
i++;
}else
if(i >=m)
j++;
}if(bflag)
result.insert(result.end(), tmp.begin(), tmp.end());
}return
result;}};
Leetcode 498 對角線遍歷
給定乙個含有 m x n 個元素的矩陣 m 行,n 列 請以對角線遍歷的順序返回這個矩陣中的所有元素,對角線遍歷如下圖所示。示例 輸入 1,2,3 4,5,6 7,8,9 輸出 1,2,4,7,5,3,6,8,9 解釋 說明 給定矩陣中的元素總數不會超過 100000 在真實的面試中遇到過這道題?這...
leetcode498 對角線遍歷
給定乙個含有 m x n 個元素的矩陣 m 行,n 列 請以對角線遍歷的順序返回這個矩陣中的所有元素。這題的兩個要點 1.對下標的五種情況的判斷 2.對傳入的二維陣列是 空陣列,單行陣列,單列陣列的處理 class solution int arr null 只有一行的情況 if matrix.le...
力扣498 對角線遍歷c語言
題目 給定乙個含有 m x n 個元素的矩陣 m 行,n 列 請以對角線遍歷的順序返回這個矩陣中的所有元素,對角線遍歷如下圖所示。示例 輸入 1,2,3 4,5,6 7,8,9 輸出 1,2,4,7,5,3,6,8,9 說明 給定矩陣中的元素總數不會超過 100000 解釋 當橫縱座標和為基數時,往...