【LeetCode每日一题】——1572.矩阵对角线元素的和

文章目录

  • 一【题目类别】
  • 二【题目难度】
  • 三【题目编号】
  • 四【题目描述】
  • 五【题目示例】
  • 六【题目提示】
  • 七【解题思路】
  • 八【时间频度】
  • 九【代码实现】
  • 十【提交结果】

一【题目类别】

  • 矩阵

二【题目难度】

  • 简单

三【题目编号】

  • 1572.矩阵对角线元素的和

四【题目描述】

  • 给你一个正方形矩阵 mat,请你返回矩阵对角线元素的和。
  • 请你返回在矩阵主对角线上的元素和副对角线上且不在主对角线上元素的和。

五【题目示例】

  • 示例 1:

    • 在这里插入图片描述

    • 输入:mat = [[1,2,3],
                           [4,5,6],
                           [7,8,9]]

    • 输出:25

    • 解释:对角线的和为:1 + 5 + 9 + 3 + 7 = 25。请注意,元素 mat[1][1] = 5 只会被计算一次。

  • 示例 2:

    • 输入:mat = [[1,1,1,1],
                            [1,1,1,1],
                            [1,1,1,1],
                            [1,1,1,1]]
    • 输出:8
  • 示例 3:

    • 输入:mat = [[5]]
    • 输出:5

六【题目提示】

  • n = = m a t . l e n g t h = = m a t [ i ] . l e n g t h n == mat.length == mat[i].length n==mat.length==mat[i].length
  • 1 < = n < = 100 1 <= n <= 100 1<=n<=100
  • 1 < = m a t [ i ] [ j ] < = 100 1 <= mat[i][j] <= 100 1<=mat[i][j]<=100

七【解题思路】

  • 定义i遍历二维数组的行数,j遍历二维数组的列数
  • 如果i==j,说明是主对角线的元素
  • 如果i+j==n-1,说明是副对角线的元素
  • 采用||进行判断,这样就不会将主对角线和副对角线的元素多加一次,因为只遍历了一次数组
  • 然后将其求和,最后返回结果即可

八【时间频度】

  • 时间复杂度: O ( n 2 ) O(n^2) O(n2) n n n为传入的正方形数组的长度
  • 空间复杂度: O ( 1 ) O(1) O(1)

九【代码实现】

  1. Java语言版
class Solution {public int diagonalSum(int[][] mat) {int n = mat.length;int res = 0;for(int i = 0;i < n;i++){for(int j = 0;j < n;j++){if(i == j || i + j == n - 1){res += mat[i][j];}}}return res;}
}
  1. C语言版
int diagonalSum(int** mat, int matSize, int* matColSize)
{int n = matSize;int res = 0;for(int i = 0;i < n;i++){for(int j = 0;j < n;j++){if(i == j || i + j == n - 1){res += mat[i][j];}}}return res;
}
  1. Python语言版
class Solution:def diagonalSum(self, mat: List[List[int]]) -> int:n = len(mat)res = 0for i in range(0,n):for j in range(0,n):if i == j or i + j == n - 1:res += mat[i][j]return res
  1. C++语言版
class Solution {
public:int diagonalSum(vector<vector<int>>& mat) {int n = mat.size();int res = 0;for(int i = 0;i < n;i++){for(int j = 0;j < n;j++){if(i == j || i + j == n - 1){res += mat[i][j];}}}return res;}
};

十【提交结果】

  1. Java语言版
    在这里插入图片描述

  2. C语言版
    在这里插入图片描述

  3. Python语言版
    在这里插入图片描述

  4. C++语言版
    在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/18712.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

交换机VLAN技术和实验(eNSP)

目录 一&#xff0c;交换机的演变 1.1&#xff0c;最小网络单元 1.2&#xff0c;中继器&#xff08;物理层&#xff09; 1.3&#xff0c;集线器&#xff08;物理层&#xff09; 1.4&#xff0c;网桥&#xff08;数据链路层&#xff09; 二&#xff0c;交换机的工作行为 2.…

【计算机视觉中的 GAN 】如何稳定GAN训练(3)

一、说明 在上一篇文章中&#xff0c;我们达到了理解未配对图像到图像翻译的地步。尽管如此&#xff0c;在实现自己的超酷深度GAN模型之前&#xff0c;您必须了解一些非常重要的概念。如本文所提的GAN模型新成员的引入&#xff1a;Wasserstein distance&#xff0c;boundary eq…

AI 绘画Stable Diffusion 研究(一)sd整合包v4.2 版本安装说明

部署包作者:秋葉aaaki 免责声明: 本安装包及启动器免费提供 无任何盈利目的 大家好&#xff0c;我是风雨无阻。众所周知&#xff0c;StableDiffusion 是非常强大的AI绘图工具&#xff0c;需要详细了解StableDiffusion的朋友&#xff0c;可查看我之前的这篇文章&#xff1a; 最…

【机器学习】Feature scaling and Learning Rate (Multi-variable)

Feature scaling and Learning Rate 1、数据集2、学习率2.1 α \alpha α 9.9e-72.2 α \alpha α 9e-72.3 α \alpha α 1e-7 3、特征缩放3.1 特征缩放的原因3.2 Z-score 归一化3.3 预测3.4 损失等值线 导入所需的库 import numpy as np np.set_printoptions(precision…

sqlserver 使用SQLOLEDB 远程数据库同步数据

exec sp_addlinkedserver remote_server, , SQLOLEDB, ip exec sp_addlinkedsrvlogin remote_server, false,null, 账号, 密码 --查询方式 select * from remote_server.数据库名.dbo.表名 --不再使用时删除链接服务器 exec sp_dropserver remote_server, droplogins…

Oracle免费在线编程:Oracle APEX

前提&#xff1a; 注意&#xff1a;你要有个梯子才能更稳定的访问。 不需要安装Oracle&#xff0c;但是需要注册。&#xff08;还算方便的&#xff09; 注册&登录过程 进入Oracle APEX官网&#xff0c;我们选择免费的APEX工作区即可&#xff0c;点击“免费注册”。在注册…

DASCTF 2023 0X401七月暑期挑战赛web复现

目录 <1> Web (1) EzFlask(python原型链污染&flask-pin) (2) MyPicDisk(xpath注入&文件名注入) (3) ez_cms(pearcmd文件包含) (4) ez_py(django框架 session处pickle反序列化) <1> Web (1) EzFlask(python原型链污染&flask-pin) 进入题目 得到源…

软件设计师(五)软件工程基础知识

一、软件工程概述 软件开发和维护过程中所遇到的各种问题称为“软件危机”。 软件工程是指应用计算机科学、数学及管理科学等原理&#xff0c;以工程化的原则和方法来解决软件问题的工程&#xff0c;其目的是提高软件生产率、提高软件质量、降低软件成本。 #mermaid-svg-h3j6K…

基于Jenkins+Python+Ubuntu+Docker的接口/UI自动化测试环境部署详细过程

基于JenkinsPythonUbuntuDocker的接口/UI自动化测试环境部署详细过程 1 Jenkins是什么&#xff1f;2 Jenkins目标是什么&#xff1f;3 什么是CI/CD?3.1 CI持续集成3.2 CD持续部署3.3 CD持续交付 4 Ubuntu环境4.1 环境需求4.2 实现思路 5 Ubuntu下安装Docker6 安装Jenkins6.1 拉…

基于Vue+ElementUI+Echarts+G2Plot的仪表盘设计器,代码完全开源

简介 &#x1f525;DashBoard基于SpringBoot、MyBatisPlus、ElementUI、G2Plot、Echarts等技术栈的仪表盘设计器&#xff0c;具备仪表盘设计、预览、资源管理、组件管理等能力&#xff0c;支持JSON、MySQL、Oracle、PostgreSQL、HTTP、JavaScript、Groovy等数据集接入&#xf…

【LeetCode每日一题】——807.保持城市天际线

文章目录 一【题目类别】二【题目难度】三【题目编号】四【题目描述】五【题目示例】六【题目提示】七【解题思路】八【时间频度】九【代码实现】十【提交结果】 一【题目类别】 矩阵 二【题目难度】 中等 三【题目编号】 1572.矩阵对角线元素的和 四【题目描述】 给你一…

PowerDesigner中table视图显示code与name

问题描述 使用PowerDesigner做数据库设计&#xff0c;要做评审&#xff0c;默认整体效果没有name显示&#xff0c;很不方便 1、右键单击&#xff0c;选择display 2、table->advanced 3、设置columns&#xff0c;点击右边的放大镜 4、自定义你需要显示的组件 效果图

性能测试/负载测试/压力测试之间的区别

做测试一年多来&#xff0c;虽然平时的工作都能很好的完成&#xff0c;但最近突然发现自己在关于测试的整体知识体系上面的了解很是欠缺&#xff0c;所以&#xff0c;在工作之余也做了一些测试方面的知识的补充。不足之处&#xff0c;还请大家多多交流&#xff0c;互相学习。 …

python-网络爬虫.BS4

BS4 Beautiful Soup 是一个可以从HTML或XML文件中提取数据的Python库&#xff0c; 它能够通过你喜欢的转换器实现惯用的文档导航、查找、修改文档的方 式。 Beautiful Soup 4 官方文档&#xff1a;https://www.crummy.com/software/BeautifulSoup/bs4/doc.zh/ 帮助手册&…

Appium+python自动化(三十五)- 命令启动appium之 appium服务命令行参数(超详解)

简介 前边介绍的都是通过按钮点击启动按钮来启动appium服务&#xff0c;有的小伙伴或者童鞋们乍一听可能不信&#xff0c;或者会问如何通过命令行启动appium服务呢&#xff1f;且听一一道来。 一睹为快 其实相当的简单&#xff0c;不看不知道&#xff0c;一看吓一跳&#xf…

右键文件夹 ------- 打开 vscode的方法

1、右键vscode点击属性 2、这是地址栏&#xff0c;一会复制即可 3、新建一个txt文件,将这个复制进去 Windows Registry Editor Version 5.00[HKEY_CLASSES_ROOT\*\shell\VSCode] "Open with Code" "Icon""D:\\Microsoft VS Code\\Code.exe"[HKE…

docker基本命令学习 | Docker网络、Docker镜像发布

&#x1f497;wei_shuo的个人主页 &#x1f4ab;wei_shuo的学习社区 &#x1f310;Hello World &#xff01; docker安装、卸载 docker安装使用 卸载旧版本docker或者环境 [rootiZf8zdcobr3fw7vn0p3538Z /]# yum remove docker \ > docker-client \ >…

混合云:降本增效,云计算的未来趋势,企业数字化转型的王道!

随着云计算技术的不断发展&#xff0c;云计算已经成为了企业信息化的主流趋势&#xff0c;而混合云则是云计算领域发展的一个新方向。混合云指的是将公有云和私有云相结合&#xff0c;构建一种新的云计算模式。本文将从混合云的定义、特点、优势以及应用场景等方面进行阐述&…

HarmonyOS学习路之方舟开发框架—学习ArkTS语言(状态管理 三)

Link装饰器&#xff1a;父子双向同步 子组件中被Link装饰的变量与其父组件中对应的数据源建立双向数据绑定。 概述 Link装饰的变量与其父组件中的数据源共享相同的值。 装饰器使用规则说明 Link变量装饰器 说明 装饰器参数 无 同步类型 双向同步。 父组件中State, Stor…

语音合成是什么?如何进行语音合成TTS数据采集?

我们在上一篇讲到语音数据采集分为常见的两种语音数据采集类型&#xff0c;一个是语音识别数据&#xff08;ASR&#xff09;&#xff0c;另一个是语音合成&#xff08;TTS&#xff09;。这一期中&#xff0c;我们将介绍语音合成技术是什么&#xff0c;如何采集语音合成数据和制…