当前位置: 首页 > news >正文

LeetCode 面试题 01.07. 旋转矩阵

文章目录

  • 一、题目
  • 二、C# 题解

一、题目

  给你一幅由 N × N 矩阵表示的图像,其中每个像素的大小为 4 字节。请你设计一种算法,将图像旋转 90 度。

  不占用额外内存空间能否做到?

  点击此处跳转题目。

示例 1:

给定 matrix =
[
[1,2,3],
[4,5,6],
[7,8,9]
],
原地旋转输入矩阵,使其变为:
[
[7,4,1],
[8,5,2],
[9,6,3]
]

示例 2:

给定 matrix =
[
[ 5, 1, 9,11],
[ 2, 4, 8,10],
[13, 3, 6, 7],
[15,14,12,16]
],
原地旋转输入矩阵,使其变为:
[
[15,13, 2, 5],
[14, 3, 4, 1],
[12, 6, 8, 9],
[16, 7,10,11]
]

  注意:本题与主站 48 题相同:https://leetcode-cn.com/problems/rotate-image/

二、C# 题解

  题目比较简单,依次逆时针覆盖值就好了。代码如下:

public class Solution {public void Rotate(int[][] matrix) {int n = matrix.Length; // 矩阵维度int record;            // 记录初始值// 逆时针旋转覆盖值for (int i = 0; i < n / 2; i++) {         // 外圈轮回for (int j = i; j < n - i - 1; j++) { // 每一圈循环覆盖值record = matrix[j][i];matrix[j][i] = matrix[n - i - 1][j];matrix[n - i - 1][j] = matrix[n - j - 1][n - i - 1];matrix[n - j - 1][n - i - 1] = matrix[i][n - j - 1];matrix[i][n - j - 1] = record;}}}
}
  • 时间复杂度: O ( n 2 ) O(n^2) O(n2)
  • 空间复杂度: O ( 1 ) O(1) O(1)

相关文章:

LeetCode 面试题 01.07. 旋转矩阵

文章目录 一、题目二、C# 题解 一、题目 给你一幅由 N N 矩阵表示的图像&#xff0c;其中每个像素的大小为 4 字节。请你设计一种算法&#xff0c;将图像旋转 90 度。 不占用额外内存空间能否做到&#xff1f; 点击此处跳转题目。 示例 1: 给定 matrix [ [1,2,3], [4,5,6], …...

vue3 pdf、word等文件下载

效果&#xff1a; <div class"byLawBox"><div class"titleBox">规章制度公示</div><div class"contentBox"><TableList:loading"byLawloading"ref"byLawtablistRef":hasImport"false"…...

带你了解SpringBoot---开启Durid 监控

文章目录 数据库操作--开启Durid 监控整合Druid 到Spring-Boot官方文档基本介绍Durid 基本使用代码实现 Durid 监控功能-SQL 监控需求:SQL 监控数据SQL 监控数据-测试页面 Durid 监控功能-Web 关联监控需求:Web 关联监控配置-Web 应用、URI 监控重启项目 Durid 监控功能-SQL 防…...

matlab 点云精配准(3)——Trimmed ICP

目录 一、算法原理1、原理概述2、参考文献二、代码实现三、结果展示四、参考链接本文由CSDN点云侠原创,matlab 点云精配准(3)——Trimmed ICP。如果你不是在点云侠的博客中看到该文章,那么此处便是不要脸的爬虫。 一、算法原理 1、原理概述 见论文:[1] 李鑫,莫思特,黄华,…...

nodejs开发环境搭建示例

服务与后端 {"name": "AsaiCC","private": true,"version": "1.0.0","description": "","main": "main.js","bin": "index.js","author": "&…...

网络安全(大厂)面试题

以下为网络安全各个方向涉及的面试题&#xff0c;星数越多代表问题出现的几率越大&#xff0c;祝各位都能找到满意的工作。 注&#xff1a;本套面试题&#xff0c;已整理成pdf文档&#xff0c;但内容还在持续更新中&#xff0c;因为无论如何都不可能覆盖所有的面试问题&#xf…...

GC面临的困境,JVM是如何解决跨代引用的?

本文已收录至GitHub&#xff0c;推荐阅读 &#x1f449; Java随想录 微信公众号&#xff1a;Java随想录 原创不易&#xff0c;注重版权。转载请注明原作者和原文链接 文章目录 跨代引用问题记忆集卡表写屏障写屏障的伪共享问题 前面我们讲了可达性分析和根节点枚举&#xff0c…...

Qt下拉菜单

1&#xff0c;QComboBox 2&#xff0c;setMenu()---设置下拉菜单 AI对话未来丨智能写作对话: setMenu()是QWidget类的一个成员函数&#xff0c;在Qt中用于将一个菜单作为一个控件的下拉菜单设置。具体来说&#xff0c;它会把相应的菜单对象与该控件关联&#xff0c;并在控件上…...

考研C语言进阶题库——更新41-50题

目录 41.编写程序要求输出整数a和b若a和b的平方和大于100&#xff0c;则输出a和b的平方和&#xff0c;否则输出a和b的和 42.现代数学的著名证明之一是Georg Cantor证明了有理数是可枚举的。他是用下面这一张表来证明这一命题的&#xff1a;第一项是1/1&#xff0c;第二项是是…...

JVM——JVM 垃圾回收

文章目录 写在前面本节常见面试题本文导火索 1 揭开 JVM 内存分配与回收的神秘面纱1.1 对象优先在 eden 区分配1.2 大对象直接进入老年代1.3 长期存活的对象将进入老年代1.4 动态对象年龄判定1.5 主要进行 gc 的区域 2 对象已经死亡&#xff1f;2.1 引用计数法2.2 可达性分析算…...

浅析阿里云灵积(平台)模型服务

简介&#xff1a; DashScope灵积模型服务以模型为中心&#xff0c;致力于面向AI应用开发者提供品类丰富、数量众多的模型选择&#xff0c;并为其提供开箱即用、能力卓越、成本经济的模型服务API。DashScope灵积模型服务依托达摩院等机构的优质模型&#xff0c;在阿里云基础设施…...

使用 PyTorch 进行高效图像分割:第 1 部分

一、说明 在这个由 4 部分组成的系列中&#xff0c;我们将使用 PyTorch 中的深度学习技术从头开始逐步实现图像分割。我们将在本文中从图像分割所需的基本概念和想法开始本系列。 图1&#xff1a;宠物图像及其分割掩码&#xff08;来源&#xff1a;牛津-IIIT宠物数据集) 图像分…...

vellum (Discovering Houdini VellumⅡ柔体系统)学习笔记

视频地址&#xff1a; https://www.bilibili.com/video/BV1ve411u7nE?p3&spm_id_frompageDriver&vd_source044ee2998086c02fedb124921a28c963&#xff08;搬运&#xff09; 个人笔记如有错误欢迎指正&#xff1b;希望可以节省你的学习时间 ~享受艺术 干杯&#x1f37b…...

最优的家电设备交互方式是什么?详解家电设备交互的演进之旅

家电&#xff0c;在人们的日常生活中扮演着不可或缺的角色&#xff0c;也是提升人们幸福感的重要组成部分&#xff0c;那你了解家电的发展史吗&#xff1f; 70年代 结婚流行“四大件”&#xff1a;手表、自行车、缝纫机&#xff0c;收音机&#xff0c;合成“三转一响”。 80年…...

前端面试总结心得

1.放在HTML里的哪一部分JavaScripts会在页面加载的时候被执行&#xff1f; A、文件头部位置&#xff1b;B、文件尾&#xff1b;C、<head>标签部分&#xff1b;D、<body>标签部分 &#xff08;正确答案D&#xff09; 2.队列和栈的区别是什么&#xff1f; 答案&am…...

STL---list

目录 1. list的介绍及使用 1.1 list的介绍 1.2 list的使用注意事项 2.list接口介绍及模拟实现 2.1构造​编辑 2.2容量 2.3修改 3.list迭代器 4.迭代器失效 5.模拟实现 6.vector和list的区别 1. list的介绍及使用 1.1 list的介绍 list的文档介绍 1. list是可以在常…...

python判断ip所属地区 python 判断ip 网段

前言 IP地址是互联网中唯一标识一个设备的地址&#xff0c;有时候需要判断一个IP地址所属的地区&#xff0c;这就需要用到IP地址归属查询。本文将介绍Python如何通过IP地址查询所属地区并展示代码。 一、 IP地址归属查询 IP地址归属查询又称IP地址归属地查询、IP地址归属地定…...

大数据分析案例-基于LightGBM算法构建糖尿病确诊预测模型

&#x1f935;‍♂️ 个人主页&#xff1a;艾派森的个人主页 ✍&#x1f3fb;作者简介&#xff1a;Python学习者 &#x1f40b; 希望大家多多支持&#xff0c;我们一起进步&#xff01;&#x1f604; 如果文章对你有帮助的话&#xff0c; 欢迎评论 &#x1f4ac;点赞&#x1f4…...

Mysql查询重复数据常用方法

在平常的开发工作中&#xff0c;我们经常需要查询数据&#xff0c;比如查询某个表中重复的数据&#xff0c;那么&#xff0c;具体应该怎么实现呢&#xff1f;常用的方法都有哪些呢&#xff1f; 测试表中数据&#xff1a; 1&#xff1a;查询名字重复的数据 having&#xff1a; …...

Go framework-GORM

目录 一、GORM 1、GORM连接数据库 2、单表的增删改查 3、结构体名和表名的映射规则 4、gorm.Model匿名字段 5、结构体标签gorm 6、多表操作 7、常用方法 8、支持原生SQL 9、Gin整合GORM 一、GORM ORM&#xff1a;即Object-Relational Mapping&#xff0c;它的作用是在…...

OpenClaw邮件管家:Qwen3-32B自动分类与智能回复实现

OpenClaw邮件管家&#xff1a;Qwen3-32B自动分类与智能回复实现 1. 为什么需要邮件自动化助手 每天早晨打开邮箱时&#xff0c;面对上百封未读邮件的压迫感&#xff0c;相信很多职场人都深有体会。重要客户询价可能淹没在订阅邮件里&#xff0c;紧急会议通知也许被系统自动归…...

如何快速获取国家中小学智慧教育平台电子课本:面向教师与学生的完整指南

如何快速获取国家中小学智慧教育平台电子课本&#xff1a;面向教师与学生的完整指南 【免费下载链接】tchMaterial-parser 国家中小学智慧教育平台 电子课本下载工具 项目地址: https://gitcode.com/GitHub_Trending/tc/tchMaterial-parser 在数字化教育快速发展的今天&…...

MakerVision:Scratch图形化编程与Arduino硬件的语义桥梁

1. MakerVision 库深度解析&#xff1a;面向 Scratch 图形化编程的 Arduino 底层适配框架1.1 项目定位与工程价值MakerVision 并非传统意义上的功能型驱动库&#xff08;如 Adafruit_NeoPixel 或 Wire&#xff09;&#xff0c;而是一个面向教育场景的代码生成中间件适配层。其核…...

Nanbeige 4.1-3B效果展示:3B参数模型在复杂推理任务中的表现实录

Nanbeige 4.1-3B效果展示&#xff1a;3B参数模型在复杂推理任务中的表现实录 1. 模型能力概览 Nanbeige 4.1-3B是一款拥有30亿参数的中等规模语言模型&#xff0c;在保持轻量级部署优势的同时&#xff0c;展现出超越参数规模的推理能力。该模型特别针对中文场景优化&#xff…...

Python实战:5分钟搞定PSI指标计算(附完整代码与可视化)

Python实战&#xff1a;5分钟搞定PSI指标计算&#xff08;附完整代码与可视化&#xff09; 在数据分析和风控建模中&#xff0c;我们经常需要评估模型或特征的稳定性。想象一下这样的场景&#xff1a;你花费数周开发的信用评分模型在上线后效果逐渐下降&#xff0c;却找不到明确…...

运维实战:Lingbot深度模型服务的监控、日志与故障排查

运维实战&#xff1a;Lingbot深度模型服务的监控、日志与故障排查 部署一个像Lingbot-Depth-Pretrain-ViTL-14这样的深度模型服务&#xff0c;对很多团队来说只是第一步。模型跑起来了&#xff0c;但怎么知道它跑得好不好&#xff1f;半夜服务突然变慢甚至挂了&#xff0c;怎么…...

OpenClaw排错大全:Qwen3-32B模型接入常见报错与修复

OpenClaw排错大全&#xff1a;Qwen3-32B模型接入常见报错与修复 1. 为什么需要这份排错指南 上周我在本地部署OpenClaw对接Qwen3-32B模型时&#xff0c;连续遭遇了三次不同层级的报错。从最初的Connection refused到后来的Invalid API Key&#xff0c;再到Model not found&am…...

MATLAB画图时坐标光标显示不准?一招教你自定义数据提示框的显示精度(附代码)

MATLAB数据可视化进阶&#xff1a;精准控制坐标光标显示精度的完整方案 在科研数据分析和工程可视化领域&#xff0c;MATLAB的图形界面(Figure)是我们最常打交道的"老伙伴"。但当你处理海量数据时&#xff0c;是否遇到过这样的困扰&#xff1a;明明是两个不同的数据点…...

Cherry Markdown 客户端 0.1.1 版本焕新升级:导出功能强化与性能优化

Cherry Markdown 客户端 0.1.1 版本焕新升级&#xff1a;导出功能强化与性能优化 【免费下载链接】cherry-markdown ✨ A Markdown Editor 项目地址: https://gitcode.com/GitHub_Trending/ch/cherry-markdown 核心价值&#xff1a;重新定义 Markdown 编辑体验 Cherry …...

Go vs Java:终极性能对决

好的&#xff0c;我们来详细比较一下 Go 语言&#xff08;Golang&#xff09;和 Java 的主要区别&#xff1a;1. 设计理念与起源Java: 诞生于 1995 年&#xff0c;目标是“一次编写&#xff0c;到处运行”&#xff08;通过 JVM&#xff09;&#xff0c;强调面向对象编程&#x…...