Leetcode--面试题 01.07. 旋转矩阵(Java)

给你一幅由 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]
]

思路:先转置矩阵,再把每一行逆置

代码:

class Solution {

    public void rotate(int[][] matrix) {

        if(matrix.length==0){

            return;

        }

        for(int i=0;i<matrix.length-1;i++){

            for(int j =i+1;j<matrix.length;j++){

                int t = matrix[i][j];

                matrix[i][j] = matrix[j][i];

                matrix[j][i] = t;

            }

        }

        for(int i=0;i<matrix.length;i++){

            for(int j=0;j<matrix.length/2;j++){

                int t =matrix[i][matrix.length-1-j];

                matrix[i][matrix.length-1-j] = matrix[i][j];

                matrix[i][j] = t;

            }

        }

    }

}

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

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

相关文章

C盘扩展卷是灰色的扩容方法

当想要扩容C盘的时候可能会发现C盘的扩展卷竟然是灰色的。原因是C盘旁边没有紧挨着的“”未分配空间“”&#xff0c; 只要将D盘的空间分出一些来就可以了。 &#xff01;&#xff01;&#xff01;磁盘的分区合并有风险&#xff0c;重要文件等记得先备份 &#xff01;&#xf…

数据与分析领域的十大技术趋势

来源&#xff1a;人工智能与大数据近日&#xff0c;Gartner发布了数据与分析领域的十大技术趋势&#xff0c;为数据和分析领导者的新冠疫情&#xff08;COVID-19&#xff09;响应和恢复工作提供指导&#xff0c;并为疫情后的重启做好准备。数据和分析领导者如果希望在疫情后能持…

到达一个数 Reach a Number

2018-09-24 14:19:58 问题描述&#xff1a; 问题求解&#xff1a; 初看到这个问题&#xff0c;直觉上认为可以通过BFS遍历解空间进行求解&#xff0c;因为本质上来说&#xff0c;这个问题和棋盘上移动马的问题是一类问题&#xff0c;都是可以转化成图的问题&#xff0c;但是MLE…

MYSQL--一条SQL更新语句是如何执行的?

输入一条更新语句&#xff0c;例如&#xff1a;update user set cc1 where ID1 具体执行流程与查询语句类似&#xff0c;详情请点击&#xff1a;https://mp.csdn.net/console/editor/html/105358656 流程走到执行器时&#xff0c;涉及两个重要的日志模块&#xff0c;redo l…

解决AI大难题:如何降低AI运行对能源的消耗?

来源&#xff1a;The Next Web作者&#xff1a;Jeannie Finks编译&#xff1a;科技行者就当下来看&#xff0c;AI领域实现突破性进展的深度学习模型&#xff0c;其规模越大&#xff0c;能耗和成本也随之增加。自然语言处理模型GPT-3就是个典型的例子&#xff0c;为了能够在准确…

STM32F105 PA9/OTG_FS_VBUS Issues

https://www.cnblogs.com/shangdawei/p/3264724.html F105 DFU模式下PA9引脚用来检测USB线缆&#xff0c;若电平在2.7~5v则认为插入usb设备&#xff08;检测到usb线缆条件满足&#xff09;&#xff0c;接下来按流程图执行。 转载于:https://www.cnblogs.com/prayer521/p/970349…

Facebook最新研究:配合AR眼镜使用的腕带,可将神经信号转化为动作

来源&#xff1a;X增强现实日前据外媒报道&#xff0c;Facebook基于其在2019年收购的初创公司的CTRL-Labs技术&#xff0c;计划提供一个新的增强现实界面。在发布的一段演示视频中&#xff0c;其展示了使用肌电信号&#xff08;EMG&#xff09;将细微的神经信号转化为动作的&am…

MYSQL--事务隔离

你在银行存了100元&#xff0c;现在你要把100元转给用户A&#xff0c;银行一查你还有钱&#xff0c;开始给A转钱&#xff0c;这时&#xff0c;转钱给A的操作还未完成&#xff0c;你又把钱转给B&#xff0c;银行一看&#xff0c;你银行账号还有钱&#xff0c;就又给B转钱。那乱套…

数据库原理

一、事务 概念ACIDAUTOCOMMIT二、并发一致性问题 丢失修改读脏数据不可重复读幻影读三、封锁 封锁粒度封锁类型封锁协议MySQL 隐式与显示锁定四、隔离级别 未提交读&#xff08;READ UNCOMMITTED&#xff09;提交读&#xff08;READ COMMITTED&#xff09;可重复读&#xff08;…

Nature封面:人类还在看提词器,AI的辩论能力却出现了重大进展

来源&#xff1a;机器之心编辑&#xff1a;魔王、陈萍人类斗嘴还要看提词器&#xff0c;AI 引经据典的能力却已经比你高出不止一个段位了。在人工智能打败专业国际象棋选手、围棋选手&#xff0c;并在多个电子游戏中大展身手之后&#xff0c;现在它冲着职业辩论选手来了&#x…

MYSQL--浅析索引

索引是为了提高数据查询的效率&#xff0c;类似于书的目录。 索引的常见模型有三种&#xff1a; 1.哈希表&#xff1a; 只适用于等值查询&#xff0c;不适用于范围查询 为什么呢&#xff1f; 哈希表是&#xff08;key&#xff0c;value&#xff09;的格式存储&#xff0c;…

HDU Integer's Power(容斥原理)

题意 求[l,r]的最大指数和&#xff08;1<l,r<10^18&#xff09; 最大指数和&#xff08;如648^24^32^6,所以64的最大指数和是6&#xff09; 题解 很明显我们可以先求出[1,n]的最大指数和&#xff0c;然后再作差。 我们可以先求出num[i]代表[1,n]中最大指数为i的数有多少个…

人工智能姿态逐渐“亲民”,2021年AI五大趋势备受期待

来源&#xff1a;齐鲁壹点人工智能(AI)已成为多国科技发展领域的“香饽饽”&#xff0c;各国政府以及多家大企业也都不甘示弱&#xff0c;争相砸重金支持该领域的发展&#xff0c;各种创新因此如雨后春笋般喷薄而出。此外&#xff0c;新冠肺炎疫情的肆虐迫使我们进一步加大对于…

MYSQL--三种锁

数据库锁设计的初衷是处理并发问题。作为多用户共享的资源&#xff0c;当出现并发访问的时候&#xff0c;数据库需要合理地控制资源的访问规则。而锁就是用来实现这些访问规则的重要数据结构。根据加锁的范围&#xff0c;MySQL 里面的锁大致可以分成全局锁、表级锁和行锁三类。…

网络请求过程示例

1.域名解析&#xff1a;在客户端&#xff08;浏览器&#xff09;输入http://www.baidu.com&#xff0c;通过DNS解析到该域名对应的IP地址为220.181.27.48 2.数据包通过链路层发送到路由器&#xff0c;通过邻居协议(ARP协议)查找给定IP地址的MAC地址 3.TCP三次握手建立端到端的连…

行业观察 | 全球IoT云平台第一股诞生,IoT离爆发还有多远?

来源&#xff1a; 财经杂志文 &#xff1a;施然2021年3月18日&#xff0c;IoT云平台公司Tuya&#xff08;涂鸦智能&#xff09;上市&#xff0c;这也是目前全球范围内IoT云平台第一股。Tuya的云敲钟仪式在杭州举办&#xff0c;共同参与云敲钟仪式的&#xff0c;除了Tuya的高管团…

Leetcode--23.合并K个排序链表(Java)

合并 k 个排序链表&#xff0c;返回合并后的排序链表。请分析和描述算法的复杂度。 示例: 输入: [ 1->4->5, 1->3->4, 2->6 ] 输出: 1->1->2->3->4->4->5->6 思路&#xff1a;分治法 多个链表&#xff0c;两两合并&#xff0c;第…

SQL2012 之 创建备份计划

打开数据库&#xff0c;选择 管理 → 右键维护计划→选择新建维护计划&#xff0c;填写计划名称&#xff0c;如下图&#xff1a; 修改维护计划参数&#xff0c;如下图&#xff1a; 工具箱->备份数据库任务&#xff0c;拖到计划里&#xff0c;如下图&#xff1a; 编辑“备份数…

薛其坤院士对话马斯克:下一个颠覆性创新是什么?

来源&#xff1a;网易科技报道文&#xff1a;丁广胜他来了&#xff0c;他又来了&#xff0c;马斯克这次在家中远程视频参会中国发展高层论坛。这次很遗憾&#xff0c;马斯克不能现场展示“动感舞蹈”了。他谈到了自动驾驶&#xff0c;也谈到了星际探索。薛其坤院士谈到了太阳能…

redis的底层数据结构

redis:一个key-value系统 Redis 与其他 key - value 缓存产品相比有以下三个特点&#xff1a; Redis支持数据的持久化&#xff0c;可以将内存中的数据保存在磁盘中&#xff0c;重启的时候可以再次加载进行使用。Redis不仅仅支持简单的key-value类型的数据&#xff0c;同时还提…