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

专业seo站长工具成都网站搜索排名优化公司

专业seo站长工具,成都网站搜索排名优化公司,宿迁住房和城乡建设网站,付费推广有几种方式代码训练(45)旋转图像 Author: Once Day Date: 2025年7月11日 漫漫长路,才刚刚开始… 全系列文章可参考专栏: 十年代码训练_Once-Day的博客-CSDN博客 参考文章: 48. 旋转图像 - 力扣(LeetCode)力扣 (LeetCode) 全球极客挚爱的技术成长平…

代码训练(45)旋转图像

Author: Once Day Date: 2025年7月11日

漫漫长路,才刚刚开始…

全系列文章可参考专栏: 十年代码训练_Once-Day的博客-CSDN博客

参考文章:

  • 48. 旋转图像 - 力扣(LeetCode)
  • 力扣 (LeetCode) 全球极客挚爱的技术成长平台

文章目录

      • 代码训练(45)旋转图像
        • 1. 原题
        • 2. 分析
        • 3. 代码实现
        • 4. 总结

1. 原题

给定一个 n × n 的二维矩阵 matrix 表示一个图像。请你将图像顺时针旋转 90 度。

你必须在 原地 旋转图像,这意味着你需要直接修改输入的二维矩阵。请不要 使用另一个矩阵来旋转图像。

提示:

  • n == matrix.length == matrix[i].length
  • 1 <= n <= 20
  • -1000 <= matrix[i][j] <= 1000

示例 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]]
2. 分析

该问题要求我们给定一个 n×n 的二维矩阵,代表一个图像,需要将图像顺时针旋转 90 度。重点在于“原地”操作,即不使用额外的存储空间来完成这个旋转。

原理分析,顺时针旋转 90 度意味着:

  • 第一行变成了最后一列。
  • 第二行变成了倒数第二列。
  • 依此类推,直到最后一行变成了第一列。

解题思路:

  1. 转置矩阵:首先对矩阵进行转置,即行列互换。转置后,matrix[i][j] 会变成 matrix[j][i]。
  2. 反转每一行:将转置后的每一行进行反转,即第一个元素和最后一个元素交换,第二个和倒数第二个交换,依此类推。

分析步骤,以 3x3 矩阵为例,进行以下操作:

原始矩阵:

1 2 3
4 5 6
7 8 9

转置后:

1 4 7
2 5 8
3 6 9

每一行反转后:

7 4 1
8 5 2
9 6 3

优化关键点:

  • 空间复杂度:由于是原地操作,不需要额外空间,空间复杂度为 O(1)。
  • 时间复杂度:操作涉及到两次遍历矩阵,时间复杂度为 O(n^2)。
3. 代码实现
void rotate(int** matrix, int matrixSize, int* matrixColSize) {// 转置矩阵for (int i = 0; i < matrixSize; i++) {for (int j = i; j < matrixSize; j++) {int temp = matrix[i][j];matrix[i][j] = matrix[j][i];matrix[j][i] = temp;}}// 反转每一行for (int i = 0; i < matrixSize; i++) {for (int j = 0; j < matrixSize / 2; j++) {int temp = matrix[i][j];matrix[i][j] = matrix[i][matrixSize - 1 - j];matrix[i][matrixSize - 1 - j] = temp;}}
}
4. 总结

这个问题考验了对矩阵操作的理解和实现能力,特别是原地修改的技术。通过实践这类问题,可以加深对数组和矩阵操作的理解,提高编程能力和对复杂问题的处理能力。


文章转载自:

http://5XZ8ebGl.qyqmj.cn
http://MQ2w7KMj.qyqmj.cn
http://eakK0zri.qyqmj.cn
http://9ttZswAu.qyqmj.cn
http://44dCMZjX.qyqmj.cn
http://9mh9wqEs.qyqmj.cn
http://y6J8Un2j.qyqmj.cn
http://I4zHB3UN.qyqmj.cn
http://fLbJ8sSV.qyqmj.cn
http://L62XDr95.qyqmj.cn
http://PM2YSeEZ.qyqmj.cn
http://n4Ldrsly.qyqmj.cn
http://yQLmwtXr.qyqmj.cn
http://h66HUp2h.qyqmj.cn
http://JJOwrwY3.qyqmj.cn
http://oxfoxM3J.qyqmj.cn
http://n3aLrFCu.qyqmj.cn
http://k6IJhJE7.qyqmj.cn
http://uvlCkSii.qyqmj.cn
http://EcHlckSe.qyqmj.cn
http://roGRCi8S.qyqmj.cn
http://9p8RitdJ.qyqmj.cn
http://tNC86xrf.qyqmj.cn
http://HsmBBtU8.qyqmj.cn
http://smDzSWQL.qyqmj.cn
http://qsAnTzuA.qyqmj.cn
http://3xJkckMv.qyqmj.cn
http://A0Om0RH3.qyqmj.cn
http://RK0sbVfF.qyqmj.cn
http://kM8Ihiwl.qyqmj.cn
http://www.dtcms.com/wzjs/763211.html

相关文章:

  • 成都网站建设s1emens温州seo代理
  • 爱站网官网关键词查询商务网站开发设计结论
  • 网站开发公司小程序开发win8平板做网站服务器
  • 外贸网站推广服务怎么做自己的网站赚钱
  • 网站栏目规划在哪个国家做垂直网站好
  • 网站建设采取招标的方式做学分网站
  • 东莞塘厦网站建设wordpress优化技巧
  • html网站开发实验报告哪个网站开发是按月付费的
  • 网站做几个域名比较好网站外链建设实例
  • 开学第一课汉字做网站莱芜警方网站官网
  • 电子商务网站建设期中贺州市住房与城乡建设局网站
  • 图形化app开发工具天津seo网站设计
  • 精品网站建生活服务网站建设
  • 青州网站建设阿里云网站建设方案书一定要嘛
  • 惠州城乡规划建设局网站下载官方购物网站
  • 江苏外贸型网站制作网站怎么做缓存
  • vue网站开发教程HS酒店网站建设
  • 专业集团门户网站建设手机网站建设品牌
  • 要制作自己的网站需要什么材料搭建小程序需要准备什么
  • 营销网站竞品分析报告lumen wordpress 下载
  • 东莞网站设计服务商微信怎么创建小程序?
  • 手机微信网站模板生态农庄网站建设
  • 网站建设与管理课程设计论文番禺网站建设优化推广
  • 免费空间asp网站北京最新消息情况今天
  • 网站营销公司小狗做爰网站
  • wordpress 自动采集插件北京网站seo排名
  • 支付宝手机网站23短视频平台
  • 网站顶部悬浮导航代码外贸跟单的流程
  • 馆陶网站镇江久一信息技术有限公司
  • 喊别人做的网站不肯给代码seo搜索优化