国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

【LeetCode每日一題】——766.托普利茨矩陣

這篇具有很好參考價值的文章主要介紹了【LeetCode每日一題】——766.托普利茨矩陣。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

一【題目類別】

  • 矩陣

二【題目難度】

  • 簡單

三【題目編號】

  • 766.托普利茨矩陣

四【題目描述】

  • 給你一個 m x n 的矩陣 matrix 。如果這個矩陣是托普利茨矩陣,返回 true ;否則,返回 false 。
  • 如果矩陣上每一條由左上到右下的對角線上的元素都相同,那么這個矩陣是 托普利茨矩陣 。

五【題目示例】

  • 示例 1:

    • 【LeetCode每日一題】——766.托普利茨矩陣,LeetCode,矩陣,算法,LeetCode,數(shù)據(jù)結(jié)構(gòu),766.托普利茨矩陣
    • 輸入: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:

    • 【LeetCode每日一題】——766.托普利茨矩陣,LeetCode,矩陣,算法,LeetCode,數(shù)據(jù)結(jié)構(gòu),766.托普利茨矩陣
    • 輸入:matrix = [[1,2],[2,2]]
    • 輸出:false
    • 解釋:
      • 對角線 “[1, 2]” 上的元素不同。

六【題目提示】

  • m = = m a t r i x . l e n g t h m == matrix.length m==matrix.length
  • n = = m a t r i x [ i ] . l e n g t h n == matrix[i].length n==matrix[i].length
  • 1 < = m , n < = 20 1 <= m, n <= 20 1<=m,n<=20
  • 0 < = m a t r i x [ i ] [ j ] < = 99 0 <= matrix[i][j] <= 99 0<=matrix[i][j]<=99

七【題目進階】

  • 如果矩陣存儲在磁盤上,并且內(nèi)存有限,以至于一次最多只能將矩陣的一行加載到內(nèi)存中,該怎么辦?
  • 如果矩陣太大,以至于一次只能將不完整的一行加載到內(nèi)存中,該怎么辦?

八【解題思路】

  • 本題的思路比較簡單,我們無需逐個對角線去比較,只需要比較前一行除了最后一個元素和后一行除了第一個元素后剩余的元素是否想等
  • 因為如果是托普利茨矩陣的話,下一行一定是上一行向右移動一個位置之后形成的矩陣,所以上一行的最后一個元素和下一行的第一個元素,可以無須判斷,因為上一行的最后一個元素被移出了,下一行的第一個元素單獨成為對角線
  • 最后返回結(jié)果即可

九【時間頻度】

  • 時間復雜度: O ( m ? n ) O(m * n) O(m?n) m 、 n m、n mn分別為傳入數(shù)組的行數(shù)和列數(shù)
  • 空間復雜度: O ( 1 ) O(1) O(1)

十【代碼實現(xiàn)】

  1. Java語言版
class Solution {
    public boolean isToeplitzMatrix(int[][] matrix) {
        int m = matrix.length;
        int n = matrix[0].length;
        for(int i = 0;i < m - 1;i++){
            for(int j = 0;j < n - 1;j++){
                if(matrix[i][j] != matrix[i+1][j+1]){
                    return false;
                }
            }
        }
        return true;
    }
}
  1. C語言版
bool isToeplitzMatrix(int** matrix, int matrixSize, int* matrixColSize)
{
    int m = matrixSize;
    int n = matrixColSize[0];
    for(int i = 0;i < m - 1;i++)
    {
        for(int j = 0;j < n - 1;j++)
        {
            if(matrix[i][j] != matrix[i+1][j+1])
            {
                return false;
            }
        }
    }
    return true;
}
  1. Python語言版
class Solution:
    def isToeplitzMatrix(self, matrix: List[List[int]]) -> bool:
        m = len(matrix)
        n = len(matrix[0])
        for i in range(m - 1):
            for j in range(n - 1):
                if matrix[i][j] != matrix[i+1][j+1]:
                    return False
        return True
  1. C++語言版
class Solution {
public:
    bool isToeplitzMatrix(vector<vector<int>>& matrix) {
        int m = matrix.size();
        int n = matrix[0].size();
        for(int i = 0;i < m - 1;i++){
            for(int j = 0;j < n - 1;j++){
                if(matrix[i][j] != matrix[i+1][j+1]){
                    return false;
                }
            }
        }
        return true;
    }
};

十一【提交結(jié)果】

  1. Java語言版
    【LeetCode每日一題】——766.托普利茨矩陣,LeetCode,矩陣,算法,LeetCode,數(shù)據(jù)結(jié)構(gòu),766.托普利茨矩陣

  2. C語言版
    【LeetCode每日一題】——766.托普利茨矩陣,LeetCode,矩陣,算法,LeetCode,數(shù)據(jù)結(jié)構(gòu),766.托普利茨矩陣

  3. Python語言版
    【LeetCode每日一題】——766.托普利茨矩陣,LeetCode,矩陣,算法,LeetCode,數(shù)據(jù)結(jié)構(gòu),766.托普利茨矩陣

  4. C++語言版
    【LeetCode每日一題】——766.托普利茨矩陣,LeetCode,矩陣,算法,LeetCode,數(shù)據(jù)結(jié)構(gòu),766.托普利茨矩陣文章來源地址http://www.zghlxwxcb.cn/news/detail-619602.html

到了這里,關(guān)于【LeetCode每日一題】——766.托普利茨矩陣的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔相關(guān)法律責任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • 【LeetCode每日一題】——566.重塑矩陣

    【LeetCode每日一題】——566.重塑矩陣

    矩陣 簡單 566.重塑矩陣 在 MATLAB 中,有一個非常有用的函數(shù) reshape ,它可以將一個 m x n 矩陣重塑為另一個大小不同(r x c)的新矩陣,但保留其原始數(shù)據(jù)。 給你一個由二維數(shù)組 mat 表示的 m x n 矩陣,以及兩個正整數(shù) r 和 c ,分別表示想要的重構(gòu)的矩陣的行數(shù)和列數(shù)。 重構(gòu)后

    2024年02月14日
    瀏覽(20)
  • ( 數(shù)組和矩陣) 566. 重塑矩陣 ——【Leetcode每日一題】

    ( 數(shù)組和矩陣) 566. 重塑矩陣 ——【Leetcode每日一題】

    難度:簡單 在 MATLAB 中,有一個非常有用的函數(shù) reshape ,它可以將一個 m x n 矩陣重塑為另一個大小不同( r x c )的新矩陣,但保留其原始數(shù)據(jù)。 給你一個由二維數(shù)組 mat 表示的 m x n 矩陣,以及兩個正整數(shù) r 和 c ,分別表示想要的重構(gòu)的矩陣的行數(shù)和列數(shù)。 重構(gòu)后的矩陣需要

    2024年02月07日
    瀏覽(24)
  • LeetCode·每日一題·2679. 矩陣中的和·排序

    LeetCode·每日一題·2679. 矩陣中的和·排序

    作者:小迅 鏈接:https://leetcode.cn/problems/sum-in-a-matrix/solutions/2330084/pai-xu-zhu-shi-chao-ji-xiang-xi-by-xun-g-a3gw/ 來源:力扣(LeetCode) 著作權(quán)歸作者所有。商業(yè)轉(zhuǎn)載請聯(lián)系作者獲得授權(quán),非商業(yè)轉(zhuǎn)載請注明出處。 ? ? 題意 - 給定一個二維數(shù)組,每次取每一行的最大值構(gòu)成一列,在該列

    2024年02月12日
    瀏覽(20)
  • ( 數(shù)組和矩陣) 645. 錯誤的集合 ——【Leetcode每日一題】

    ( 數(shù)組和矩陣) 645. 錯誤的集合 ——【Leetcode每日一題】

    難度:簡單 集合 s 包含從 1 到 n 的整數(shù)。不幸的是,因為數(shù)據(jù)錯誤,導致集合里面某一個數(shù)字復制了成了集合里面的另外一個數(shù)字的值,導致集合 丟失了一個數(shù)字 并且 有一個數(shù)字重復 。 給定一個數(shù)組 nums 代表了集合 S 發(fā)生錯誤后的結(jié)果。 請你找出重復出現(xiàn)的整數(shù),再找到

    2024年02月04日
    瀏覽(22)
  • ( 數(shù)組和矩陣) 697. 數(shù)組的度 ——【Leetcode每日一題】

    ( 數(shù)組和矩陣) 697. 數(shù)組的度 ——【Leetcode每日一題】

    難度:簡單 給定一個非空且只包含非負數(shù)的整數(shù)數(shù)組 nums ,數(shù)組的 度 的定義是指數(shù)組里任一元素出現(xiàn)頻數(shù)的最大值。 你的任務(wù)是在 nums 中找到與 nums 擁有相同大小的度的最短連續(xù)子數(shù)組,返回其長度。 示例 1: 輸入:nums = [1,2,2,3,1] 輸出:2 解釋: 輸入數(shù)組的度是 2 ,因為

    2024年02月02日
    瀏覽(21)
  • 【LeetCode每日一題】——304.二維區(qū)域和檢索-矩陣不可變

    【LeetCode每日一題】——304.二維區(qū)域和檢索-矩陣不可變

    矩陣 中等 304.二維區(qū)域和檢索-矩陣不可變 給定一個二維矩陣 matrix,以下類型的多個請求: 計算其子矩形范圍內(nèi)元素的總和,該子矩陣的 左上角 為 (row1, col1) ,右下角 為 (row2, col2) 。 實現(xiàn) NumMatrix 類: NumMatrix(int[][] matrix) 給定整數(shù)矩陣 matrix 進行初始化 int sumRegion(int row1, i

    2024年02月13日
    瀏覽(18)
  • Leetcode-每日一題【劍指 Offer 29. 順時針打印矩陣】

    Leetcode-每日一題【劍指 Offer 29. 順時針打印矩陣】

    輸入一個矩陣,按照從外向里以順時針的順序依次打印出每一個數(shù)字。 示例 1: 輸入: matrix = [[1,2,3],[4,5,6],[7,8,9]] 輸出: [1,2,3,6,9,8,7,4,5] 示例 2: 輸入: 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 1.題目要求

    2024年02月13日
    瀏覽(28)
  • 【LeetCode每日一題】——1572.矩陣對角線元素的和

    【LeetCode每日一題】——1572.矩陣對角線元素的和

    矩陣 簡單 1572.矩陣對角線元素的和 給你一個正方形矩陣 mat,請你返回矩陣對角線元素的和。 請你返回在矩陣主對角線上的元素和副對角線上且不在主對角線上元素的和。 示例 1: 輸入:mat = [[1,2,3], ?????????????????????[4,5,6], ?????????????????????[7,

    2024年02月14日
    瀏覽(25)
  • ( 數(shù)組和矩陣) 667. 優(yōu)美的排列 II ——【Leetcode每日一題】

    ( 數(shù)組和矩陣) 667. 優(yōu)美的排列 II ——【Leetcode每日一題】

    難度:中等 給你兩個整數(shù) n 和 k ,請你構(gòu)造一個答案列表 answer ,該列表應當包含從 1 到 n 的 n 個不同正整數(shù),并同時滿足下述條件: 假設(shè)該列表是 answer = [a1, a2, a3, ... , an] ,那么列表 [|a1 - a2|, |a2 - a3|, |a3 - a4|, ... , |an-1 - an|] 中應該有且僅有 k 個不同整數(shù)。 返回列表 answer

    2024年02月06日
    瀏覽(19)
  • ( 數(shù)組和矩陣) 485. 最大連續(xù) 1 的個數(shù) ——【Leetcode每日一題】

    ( 數(shù)組和矩陣) 485. 最大連續(xù) 1 的個數(shù) ——【Leetcode每日一題】

    難度:簡單 給定一個二進制數(shù)組 nums , 計算其中最大連續(xù) 1 的個數(shù)。 示例 1: 輸入:nums = [1,1,0,1,1,1] 輸出:3 解釋:開頭的兩位和最后的三位都是連續(xù) 1 ,所以最大連續(xù) 1 的個數(shù)是 3. 示例 2: 輸入:nums = [1,0,1,1,0,1] 輸出:2 提示: 1 = n u m s . l e n g t h = 1 0 5 1 = nums.length = 10^5

    2024年02月08日
    瀏覽(27)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包