在线客服

小二维矩阵matrix_new解题技巧

adminadmin 报建百科 2024-04-25 101 21
小二维矩阵matrix_new解题技巧

一、题型

给出一个 n?×?n 的二维矩阵matrix 表明一个图象。麻烦你将图象顺时针 90 度。

你需要在 原地不动 转动图象,这就意味着我们需要立即改动输入二维矩阵。千万不要 应用另一个引流矩阵来转动图象。

二、实例

2.1> 实例 1:

【键入】matrix = [[1,2,3],[4,5,6],[7,8,9]]
【导出】[[7,4,1],[8,5,2],[9,6,3]]

2.2> 实例 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]]

提醒:

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

三、解题技巧

依据题目描述,大家要把题型给的二维矩阵matrix开展顺时针方向90度的转动,随后回到转动后matrix二维数组就可以。在其中,很容易想起是先创建一个同样大小的小二维矩阵matrix_new,随后实行如下所示流程:

【流程1】赋值二维矩阵matrix第1行情况下,就把其取值为matrix_new的后1列;
【流程2】赋值二维矩阵matrix第2行情况下,就把其取值为matrix_new的倒数第2列;
【流程2】赋值二维矩阵matrix第3行情况下,就把其取值为matrix_new的倒数第3列;
依此类推……

可是,题型有一个规定,便是千万不要应用另一个引流矩阵来旋转图形,因此上边的打法就不建议去解释这题了。那我们有没有什么其它的打法呢?我们其实可以采取如下所示两个步骤挪动二维矩阵:

【流程1】将matrix二维矩阵开展左右交换;
【流程2】将matrix二维矩阵开展对角线交换;

通过上边两个步骤,大家就能实现将matrix二维矩阵顺时针90度。为了方便了解,就以键入matrix = [[5,1,9,11],[2,4,8,10],[13,3,6,7],[15,14,12,16]]为例子,来看一下实际操作流程。实际请见下面:

四、代码编写

class Solution {
    public void rotate(int[][] matrix) {
        int n = matrix.length;
        for (int i = 0; i < n/2; i  ) {
            for (int j = 0; j < matrix[0].length; j  ) {
                int temp = matrix[i][j];
                matrix[i][j] = matrix[n - i - 1][j];
                matrix[n - i - 1][j] = temp;
            }
        }
        for (int i = 0; i < n; i  ) {
            for (int j = i; j < matrix[0].length; j  ) {
                int temp = matrix[i][j];
                matrix[i][j] = matrix[j][i];
                matrix[j][i] = temp;
            }    
        }
    }
}

今天的文章具体内容就这么多了:

创作不容易,小编几小时乃至数日进行的一篇文章,唯愿换得您几秒的 关注点赞 & 共享 。

大量技术性干货知识,欢迎各位扫码关注“java缪斯” ~ \(^o^)/ ~ 「满满干货,每日更新」

本站是一个以CSS、JavaScript、Vue、HTML为中心的前端开发技术网址。我们的使命是为众多前端工程师者提供全方位、全方位、好用的前端工程师专业知识和技术服务。 在网站上,大家可以学到最新前端开发技术,掌握前端工程师最新发布的趋势和良好实践。大家提供大量实例教程和实例,让大家可以快速上手前端工程师的关键技术和程序。 本站还提供了一系列好用的工具软件,帮助你更高效地开展前端工程师工作中。公司提供的一种手段和软件都要经过精心策划和改进,能够帮助你节约时间精力,提高研发效率。 此外,本站还拥有一个有活力的小区,你可以在社区里与其它前端工程师者沟通交流技术性、交流经验、处理问题。我们坚信,街道的能量能够帮助你能够更好地进步与成长。 在网站上,大家可以寻找你需要的一切前端工程师网络资源,使您成为一名更加出色的网页开发者。欢迎你添加我们的大家庭,一起探索前端工程师的无限潜能!
代办报建

本公司承接江浙沪报建代办施工许可证。
联系人:张经理,18321657689(微信同号)。

喜欢0发布评论

21条评论

  • 游客 发表于 2个月前

    今天上网不回帖,回帖就回精华帖!https://sdceda.com/lao/852063514/

  • 游客 发表于 2个月前

    东方不败外加灭绝师太啊!https://sdceda.com/fei/159710478/

  • 游客 发表于 2个月前

    没人理我,好伤心啊!http://atkg.bmnxenjm.net/test/686835920.html

  • 游客 发表于 2个月前

    顶顶更健康!http://hebu.cqyiyou.net/test/159119066.html

  • 游客 发表于 1个月前

    收藏了,楼主加油!http://xawj0n.pt350128.cn

  • 游客 发表于 1个月前

    经典!http://www.jiagu1.com/fei/pfbohnqz2/

  • 游客 发表于 4周前

    支持一下,下面的保持队形!http://1a593.xaqrpj.com.cn

  • 游客 发表于 2周前

    我只看看不说话。。。http://www.guangcexing.net/voddetail/sdwyDgPQ.html

  • 游客 发表于 2周前

    看帖不回帖都是耍流氓!http://www.guangcexing.net/voddetail/ndfAMzkfTp.html

  • 游客 发表于 2周前

    在哪里跌倒,就在那里多爬一会儿!http://www.guangcexing.net/voddetail/nWWQbMjtfeC.html

  • 游客 发表于 1周前

    每天顶顶贴,一身轻松啊!http://www.guangcexing.net/voddetail/jgpwkFneHEN.html

  • 游客 发表于 1周前

    不错哦,楼主这是要火的节奏啊!http://www.guangcexing.net/voddetail/ezdbBXJwShyT.html

  • 指尖网 发表于 5小时前

    楼主看起来很有学问!http://4us1x.cervejaesalsicha.com

发表评论

  • 昵称(必填)
  • 邮箱
  • 网址