文章目录

  • 题目描述
  • 代码 & 思路

题目描述

  • 矩阵题,一眼就感觉很烦,直接看了题解= =
  • 因为要求原地旋转,所以只能用temp来做
  • 当然,我们还是要回顾一下矩阵转置的,看看和这道题有啥不同,说不定就能用上呢。
  • 好的,我们惊奇地发现,这玩意就是转置的镜像,那就好办了:转置 + 镜像即可

代码 & 思路

  • 注意转置的范围,别直接转置两次还原
  • 时间复杂度O(n2n^2n2)
class Solution {public void rotate(int[][] matrix) {// 用temp来做int row = matrix.length;int col = matrix[0].length;// 先转置for(int i=0;i<row;i++){// 注意是从i开始,否则会导致转两次,相当于没转for(int j=i;j<col;j++){int temp = matrix[i][j];matrix[i][j] = matrix[j][i];matrix[j][i] = temp;}}// 再镜像for(int j=0;j<col/2;j++){for(int i=0;i<row;i++){int temp = matrix[i][j];matrix[i][j] = matrix[i][col - j -1];matrix[i][col - j -1] = temp;}}}
}

【LeetCode笔记】48. 旋转图像(Java、矩阵、偏数学、原地算法)相关推荐

  1. 【LeetCode笔记】剑指 Offer 44. 数字序列中某一位的数字(Java、偏数学)

    文章目录 题目描述 思路 && 代码 题目描述 比较偏数学的一道题..众所周知这类题代码量都不大,但是就是难想= = 思路 && 代码 这篇题解写得很好- 建议还是直接 ...

  2. java矩阵连乘_算法设计与分析——矩阵连乘问题(动态规划)

    一.问题描述 引出问题之前我们先来复习一下矩阵乘积的标准算法. int ra,ca;//矩阵A的行数和列数 int rb,cb;//矩阵B的行数和列数 voidmatrixMultiply() {fo ...

  3. 【LeetCode笔记】253. 会议室 II(Java、偏数学)

    文章目录 题目描述 思路 && 代码 计划里 hot 100 + 剑指Offer 的题目中唯一一道会员题,同时也是最后一道没写的题,刚好今天 leetcode 发了一天会员可以写上-简 ...

  4. 【LeetCode笔记】299. 猜数字游戏 (Java、偏数学)

    文章目录 题目描述 思路 && 代码 题目描述 顶级阅读题! 今天的每日一题,感觉评论区大佬的写法挺值得记录的,就又水了一篇答题文- 思路 && 代码 O(n).O(1 ...

  5. 【LeetCode笔记】406. 根据身高重建队列(Java、偏数学)

    文章目录 题目描述 思路 && 代码 二刷 题目描述 老阅读题了= =,第一遍看题的时候一脸懵逼 但其实代码就6行(嘿嘿) 思路 && 代码 先按照身高降序排,再按照人 ...

  6. 【LeetCode笔记】54. 螺旋矩阵(Java、迭代、递归)

    文章目录 题目描述 思路 & 代码 递归 迭代 更新版 - 递归 题目描述 递归和迭代都实现了,递归相对比较好理解,也比较好实现 思路 & 代码 递归 每次都把最外圈的元素跑完 一行 ...

  7. [Leetcode][第1025题][JAVA][除数博弈][数学][递推]

    [问题描述][中等] [解答思路] 1. 数学证明 找规律 时间复杂度:O(1) 空间复杂度:O(1) 2. 递推 时间复杂度:O(N) 空间复杂度:O(1) class Solution {publ ...

  8. leetcode C++ 48. 旋转图像 给定一个 n × n 的二维矩阵表示一个图像。 将图像顺时针旋转 90 度。

    一.思路: 某一个的转化后的路径变化:(i,j)-->(j,n-1-i)-->(n-1-i,n-1-j)-->(i,j), 所以转变一个,就等于转变4个,n为偶数数时,遍历n*n/4 ...

  9. [Leetcode][第329题][JAVA][矩阵中的最长递增路径][DFS][拓扑排序]

    [问题描述][中等] [解答思路] 1. 记忆化深度优先搜索 复杂度 class Solution {public int[][] dirs = {{-1, 0}, {1, 0}, {0, -1}, ...

  10. [Leetcode][第81题][JAVA][N皇后问题][回溯算法]

    [问题描述][困难] [解答思路] 1. 主副对角线列 标记 复杂度 import java.util.ArrayDeque; import java.util.ArrayList; import j ...

最新文章

  1. open python语言实现 pdf_使用python操作Pdf代码实现
  2. Javapinyin4J实现中文名转拼音
  3. 不好意思朋友们,前段时间都没来过,工作忙!
  4. js模版引擎handlebars.js实用教程——结束语
  5. 在职研究生和全日制研究生的区别_“在职研究生”与“全日制研究生”有什么区别?...
  6. VM虚拟机上的CentOS 7系统重置root用户密码
  7. /usr/include/features.h:356:25: 致命错误: sys/cdefs.h:没有那个文件或目录
  8. #绘制圆心_AutoCAD绘制齿轮教程
  9. 最短路最小生成树水题
  10. win 2016 ssh_【软件】Adobe 2020全家桶直装版2月最新升级!包含WIN+MAC全套! S22
  11. 使用递归方式进行二叉树的前中后序遍历
  12. 移动端扫描vin码/车架号识别
  13. 【Verilog基础】常见的加法器电路总结(面试常考)(半加器、全加器、行波进位加法器RCA、超前进位加法器CLA)
  14. GAMS编写综合能源程序
  15. 测试人生 | 为了娃的奶粉钱,测试媛妈妈拿出考研的拼劲,半年终圆大厂梦!
  16. sql中向下取整怎么取_Sql Server 里的向上取整、向下取整、四舍五入取整的实例!...
  17. Python-flask 使用Markdown和Flask-PageDown支持富文本文章
  18. windows设置路由信息
  19. Java知识点梳理思维导图
  20. 电脑的字体改变了、变模糊了怎么办

热门文章

  1. processing python模式_详解python之多进程和进程池(Processing库)
  2. slow log php,善用php-fpm的慢执行日志slow log,分析php性能问题
  3. pytorch查看应用指数衰减后的学习率
  4. 最小步长移动word表格标尺
  5. python对Excel的操作 xlrd、xlwt包详解
  6. OpenCV学习(二十一) :计算图像连通分量:connectedComponents(),connectedComponentsWithStats()
  7. 好的PPT——准备工作
  8. Replace Data Value with Object(以对象取代数据值)
  9. C++学习之路 | PTA乙级—— 1064 朋友数 (20 分)(精简)
  10. android批处理脚本,BAT批处理一键生成APK包脚本分享