每日一题——LeetCode1572.矩阵对角线元素的和

方法一 遍历矩阵
如果矩阵中某个位置(x,y)处于对角线上,那么这个位置必定满足:
x=y 或 x+y = len-1 (len为矩阵长度)
var diagonalSum = function(mat) {let len = mat.length;let sum = 0;for (let i = 0; i < len; i++) {for (let j = 0; j < len; j++) {if (i == j || i + j == len - 1) {sum += mat[i][j];}}}return sum;
};
消耗时间和内存情况:

方法二 枚举对角线元素:
逐行遍历,记当前行号为i,每一行的对角线元素为(i,i)和(i,len-i-1)
如果len为奇数则对角线交点会被计算两次,需要减掉一次
用len&1,如果len为奇数结果为1,len为偶数结果为0
var diagonalSum = function(mat) {let len = mat.length, mid = Math.floor(len / 2);let sum = 0;for (let i = 0; i < len; ++i) {sum += mat[i][i] + mat[i][len - 1 - i];}return sum - mat[mid][mid] * (len & 1);
};
消耗时间和内存情况:

相关文章:
每日一题——LeetCode1572.矩阵对角线元素的和
方法一 遍历矩阵 如果矩阵中某个位置(x,y)处于对角线上,那么这个位置必定满足: xy 或 xy len-1 (len为矩阵长度) var diagonalSum function(mat) {let len mat.length;let sum 0;for (let i 0; i …...
mysql 常用命令练习
管理表格从表中查询数据从多个表查询修改数据sql变量类型 管理表格 创建一个包含三列的新表 CREATE TABLE products (id INT,name VARCHAR(255) NOT NULL,price INT DEFAULT 0,PRIMARY KEY(id) // 自增 ); 从数据库中删除表 DROP TABLE product; 向表中添加新列 ALTER TAB…...
QT6 libModbus 用于ModbusTcp客户端读写服务端
虽然在以前的文章中多次描述过,那么本文使用开源库libModbus,可得到更好的性能,也可移植到各种平台。 性能:读1次和写1次约各用时2ms。 分别创建了读和写各1个连接指针,用于读100个寄存器和写100个寄存器,读写分离。 客户端&am…...
飞桨(PaddlePaddle)Tensor使用教程
文章目录 飞桨(PaddlePaddle)Tensor使用教程1. 安装飞桨2. 创建Tensor3. Tensor的基本属性4. Tensor的操作5. Tensor的广播机制6. Tensor与Numpy数组的转换7. 结论 飞桨(PaddlePaddle)Tensor使用教程 1. 安装飞桨 首先ÿ…...
数据结构c版(3)——排序算法
本章我们来学习一下数据结构的排序算法! 目录 1.排序的概念及其运用 1.1排序的概念 1.2 常见的排序算法 2.常见排序算法的实现 2.1 插入排序 2.1.1基本思想: 2.1.2直接插入排序: 2.1.3 希尔排序( 缩小增量排序 ) 2.2 选择排序 2.2…...
《Spring Security 简易速速上手小册》第5章 高级认证技术(2024 最新版)
文章目录 5.1 OAuth2 和 OpenID Connect5.1.1 基础知识详解OAuth2OpenID Connect结合 OAuth2 和 OIDC 5.1.2 重点案例:使用 OAuth2 和 OpenID Connect 实现社交登录案例 Demo 5.1.3 拓展案例 1:访问受保护资源案例 Demo测试访问受保护资源 5.1.4 拓展案例…...
【七】【SQL】自连接
自连接初见 数据库中的自连接是一种特殊类型的SQL查询,它允许表与自身进行连接,以便查询表中与其他行相关联的行。自连接通常用于处理那些存储在同一个表中的但彼此之间具有层级或关系的数据。为了实现自连接,通常需要给表使用别名ÿ…...
C语言while 与 do...while 的区别?
一、问题 while 语句和 do...while 语句类似,都是要判断循环条件是否为真。如果为真,则执⾏循环体,否则退出循环。它们之间有什么区别呢? 二、解答 while 语句和 do..while 语句的区别在于:do..while 语句是先执⾏⼀次…...
RK3568平台开发系列讲解(基础篇)内核错误码
🚀返回专栏总目录 文章目录 一、指针的分类二、错误码三、错误码使用案例沉淀、分享、成长,让自己和他人都能有所收获!😄 一、指针的分类 二、错误码 在 Linux 内核中,所谓的错误指针已经指向了内核空间的最后一页,例如,对于一个 64 位系统来说,内核空间最后地址为 0…...
点云从入门到精通技术详解100篇-基于点云网络和 PSO 优化算法的手势估计(续)
目录 3 深度图像处理及转化 3.1 双目深度摄像原理及深度图的获取 3.1.1 理想化双目深度相机成像...
设计模式(十一)策略模式
请直接看原文:设计模式(十一)策略模式_某移动支付系统在实现账户资金转入和转出时需要进行身份验证,该系统为用户提供了-CSDN博客 ----------------------------------------------------------------------------------------------------------------…...
Java 计算某年份二月的天数
一、实验任务 要求编写一个程序,从键盘输入年份,根据输入的年份计算这一年的2月有多少天。 二、实验内容 三、实验结果 四、实现逻辑和步骤 (1)使用scanner类实现程序使用键盘录入一个年份。 (2)使用if语…...
unity 数学 如何计算线和平面的交点
已知一个平面上的一点P0和法向量n,一条直线上的点L0和方向L,求该直线与该平面的交点P 如下图 首先我们要知道向量归一化点乘之后得到就是两个向量的夹角的余弦值,如果两个向量相互垂直则值是0,小于0则两个向量的夹角大于90度,大于…...
Mysql DATETIME与TIMESTAMP的区别
TIMESTAMP的取值范围小,并且TIMESTAMP类型的日期时间在存储时会将当前时区的日期时间值转换为时间标准时间值,检索时再转换回当前时区的日期时间值。 而DATETIME则只能反映出插入时当地的时区,其他时区的人查看数据必然会有误差的。 DATETI…...
hadoop基础
启动Hadoop cd /usr/local/hadoop ./sbin/start-dfs.sh #启动hadoop打开 ./bin/hdfs dfs ./bin/hdfs dfs -ls 针对 DataNode 没法启动的解决方法 cd /usr/local/hadoop ./sbin/stop-dfs.sh # 关闭 rm -r ./tmp # 删除 tmp 文件,注意这会删除 HDFS 中原有的…...
2024目前三种有效加速国内Github
大家好我是咕噜美乐蒂,很高兴又和大家见面了!截至2024年,国内访问 GitHub 的速度受到多种因素的影响,包括网络封锁、地理距离、网络带宽等。为了提高国内用户访问 GitHub 的速度,以下是目前较为有效的三种加速方式&…...
2024高频前端面试题 HTML 和 CSS 篇
JS和ES6 篇: 2024高频前端面试题 JavaScript 和 ES6 篇-CSDN博客 一 . HTML 篇 1. H5有什么新特性 1) 语义化标签 用正确的标签做正确的事情。 html 语义化让页面的内容结构化,结构更清晰,便于对浏览器、搜索引擎解析&…...
LeetCode 100231.超过阈值的最少操作数 I
给你一个下标从 0 开始的整数数组 nums 和一个整数 k 。 一次操作中,你可以删除 nums 中的最小元素。 你需要使数组中的所有元素都大于或等于 k ,请你返回需要的 最少 操作次数。 示例 1: 输入:nums [2,11,10,1,3], k 10 输…...
Pygame教程01:初识pygame游戏模块
Pygame是一个用于创建基本的2D游戏和图形应用程序。它提供了一套丰富的工具,让开发者能够轻松地创建游戏和其他图形应用程序。Pygame 支持许多功能,包括图像和声音处理、事件处理、碰撞检测、字体渲染等。 Pygame 是在 SDL(Simple DirectMed…...
HTML和CSS (前端共三篇)【详解】
目录 一、前端开发介绍 二、HTML入门 三、HTML基础标签 四、CSS样式修饰 五、HTML表格标签 六、HTML表单标签 一、前端开发介绍 web应用有BS和CS架构两种,其中我们主要涉及的是BS架构。而BS架构里,B(Browser浏览器)是客户端的…...
如何免费实现NVIDIA显卡专业级色彩校准:novideo_srgb终极指南
如何免费实现NVIDIA显卡专业级色彩校准:novideo_srgb终极指南 【免费下载链接】novideo_srgb Calibrate monitors to sRGB or other color spaces on NVIDIA GPUs, based on EDID data or ICC profiles 项目地址: https://gitcode.com/gh_mirrors/no/novideo_srgb…...
qmcdump:三步解锁QQ音乐加密文件,让您的音乐收藏重获自由
qmcdump:三步解锁QQ音乐加密文件,让您的音乐收藏重获自由 【免费下载链接】qmcdump 一个简单的QQ音乐解码(qmcflac/qmc0/qmc3 转 flac/mp3),仅为个人学习参考用。 项目地址: https://gitcode.com/gh_mirrors/qm/qmcd…...
基于随机森林与形态学参数预测星系外生恒星质量分数
1. 项目概述与核心目标在星系天文学领域,一个长期困扰我们的核心问题是:我们如何仅凭一张遥远星系的“照片”,就能解读它波澜壮阔的成长史?星系中的恒星,有些是“土生土长”的原位形成,有些则是通过“吞并”…...
煎饼果仔 夏天妹妹 90 天 AI 变现落地计划
配套固化核心 Skills+ 标准化Workflow,分阶段落地,兼顾口碑与长效收益 一、阶段总规划 表格 周期 阶段核心目标 变现侧重 AI 能力沉淀 1-30 天 资产梳理 + 模型训练,搭建生产底座 现有商单 + 单片付费增收 风格 LoRA、声纹、剧本模型、素材资产库 31-60 天 AI 量产内容 + …...
基于群论的双曲空间统计建模:从莫比乌斯分布到高效算法
1. 项目概述:为什么我们需要双曲空间与群论?如果你处理过社交网络、知识图谱或者自然语言中的词汇关系,一定对“层次结构”这个词不陌生。想象一下,你要把整个维基百科的词条关系,或者一个公司的组织架构图,…...
[智能体-29]:curl 命令完整详解
全称:Client URL,客户端 URL 请求工具跨系统内置命令行 HTTP 工具,无额外安装,用于网络请求、接口调试、数据收发。一、核心作用等价命令行版 requests,可访问网页、调用 API、下载文件、测试服务连通性,调…...
AI Agent记忆方案大比拼:RAG、Mem0、Zep、Letta怎么选?告别选型迷茫!
本文综述了多种AI Agent记忆方案,包括RAG、Mem0、Zep、Letta、LangMem等,并分析了它们各自的适用场景和优缺点。文章指出,选择合适的记忆方案需要根据具体应用场景来确定,如RAG适合知识库检索,Mem0适合跨会话个性化&am…...
用Python和LSTM搞定风电功率预测:从数据清洗到区间预测的完整实战(附2018年数据集)
风电功率预测实战:基于Python与LSTM的完整实现指南风电作为清洁能源的重要组成部分,其功率预测对电网调度和能源管理至关重要。本文将带您从零开始构建一个完整的LSTM风电功率预测系统,涵盖数据预处理、模型构建、训练优化到结果可视化的全流…...
[智能体-42]:深度解读:Python 免编译 + 动态执行,支撑智能体落地大模型决策
一、先厘清核心概念无需编译执行:Python 属于解释型语言,区别于 C/C、Java 编译型语言。编译型语言必须先将源码整体编译成机器码 / 字节码文件,才能运行;Python 无需手动编译,源码可逐行边解析边执行,即时…...
Ubuntu 22.04双网卡配置踩坑记:netplan apply报错‘默认路由冲突’的三种解法
Ubuntu 22.04双网卡路由冲突实战指南:从紧急修复到高阶策略当你为Ubuntu服务器配置双网卡时,netplan apply命令突然抛出"Conflicting default route declarations for IPv4"错误,这种场景对运维工程师来说再熟悉不过。本文将带你深…...
