766 托普利茨矩陣

2021-10-09 04:50:00 字數 1012 閱讀 4900

題目描述:

如果矩陣上每一條由左上到右下的對角線上的元素都相同,那麼這個矩陣是 托普利茨矩陣 。

給定乙個 m x n 的矩陣,當且僅當它是托普利茨矩陣時返回 true。

示例 1:

輸入:matrix = [

[1,2,3,4],

[5,1,2,3],

[9,5,1,2]

]輸出: true

解釋:在上述矩陣中, 其對角線為:

「[9]」, 「[5, 5]」, 「[1, 1, 1]」, 「[2, 2, 2]」, 「[3, 3]」, 「[4]」。

各條對角線上的所有元素均相同, 因此答案是true。

示例 2:

輸入:matrix = [

[1,2],

[2,2]

]輸出: false

解釋:對角線"[1, 2]"上的元素不同。

說明:

matrix 是乙個包含整數的二維陣列。

matrix 的行數和列數均在 [1, 20]範圍內。

matrix[i][j] 包含的整數在 [0, 99]範圍內。

高階:

如果矩陣儲存在磁碟上,並且磁碟記憶體是有限的,因此一次最多只能將一行矩陣載入到記憶體中,該怎麼辦?

如果矩陣太大以至於只能一次將部分行載入到記憶體中,該怎麼辦?

方法1:

主要思路:

(1)在不越界的情況下,將當前字元和左上角字元比較,若不相等,則直接返回false;

class

solution

//遍歷元素,看和左上角元素是否相等

for(

int i=

1;isize()

;++i)}}

return

true;}

};

766 托普利茨矩陣

鏈結 如果乙個矩陣的每一方向由左上到右下的對角線上具有相同元素,那麼這個矩陣是托普利茨矩陣。給定乙個 m x n 的矩陣,當且僅當它是托普利茨矩陣時返回 true。示例 1 輸入 matrix 1,2,3,4 5,1,2,3 9,5,1,2 輸出 true 解釋 在上述矩陣中,其對角線為 9 5,5...

766 托普利茨矩陣

給你乙個 m x n 的矩陣 matrix 如果這個矩陣是托普利茨矩陣,返回 true 否則,返回 false 如果矩陣上每一條由左上到右下的對角線上的元素都相同,那麼這個矩陣是 托普利茨矩陣 示例 1 輸入 matrix 1,2,3,4 5,1,2,3 9,5,1,2 輸出 true 解釋 在上述...

766 托普利茨矩陣

給你乙個 m x n 的矩陣 matrix 如果這個矩陣是托普利茨矩陣,返回 true 否則,返回 false 如果矩陣上每一條由左上到右下的對角線上的元素都相同,那麼這個矩陣是 托普利茨矩陣 開始是想利用迴圈,通過座標變換的形式把矩陣遍歷一遍,這樣做每個位置基本上只用遍歷一遍,執行起來快一些,代價...