20190817:(leetcode习题)旋转图像
旋转图像
- 题目
- 大致思路
- 代码实现
题目
大致思路
直接修改旋转之后的矩阵:也就是说,直接计算旋转后的位置即可,分析如下:
原始矩阵
1 2 34 5 67 8 9
调换对角元素后的矩阵:对角元素的规律是:00-22,01-12,10-21,中间两个数字和外面两个数字加起来相等,等于矩阵的长度-1。
9 6 3 8 5 2 7 4 1
调换第一行与最后一行,即可得到目标矩阵:00-20,01-21,02-22,行索引之和为长度-1.
7 4 1 8 5 2 9 6 3
代码实现
class Solution {public void rotate(int[][] matrix) {//调换反对角线对称的对角元素for(int i = 0;i<matrix.length;i++){for(int j = 0;j<matrix.length-i;j++){int temp = matrix[i][j];matrix[i][j] = matrix[matrix.length-j-1][matrix.length-i-1];matrix[matrix.length-j-1][matrix.length-i-1] = temp;}}//将行序完全颠倒for(int i = 0;i<matrix.length;i++){for(int j = 0;j<matrix.length/2;j++){int temp = matrix[j][i];matrix[j][i] = matrix[matrix.length-1-j][i];matrix[matrix.length-1-j][i] = temp;}}}
}
20190817:(leetcode习题)旋转图像相关推荐
- JVAV学习小练习(一)之leetcode习题之接雨水
leetcode习题之接雨水 一.题目描述 给你一个 m x n 的矩阵,其中的值均为非负整数,代表二维高度图每个单元的高度,请计算图中形状最多能接多少体积的雨水.(图片是从leetcode拉过来的) ...
- 【LeetCode】旋转图像
系列文章目录 文章目录 系列文章目录 前言 一.旋转图像 二.使用步骤 解法一:先延反对角线对称,再上下翻转 解法二: 总结 前言 一.旋转图像 给定一个 n × n 的二维矩阵 matrix 表示一 ...
- Leetcode 48. 旋转图像 (每日一题 20210813)
给定一个 n × n 的二维矩阵 matrix 表示一个图像.请你将图像顺时针旋转 90 度.你必须在 原地 旋转图像,这意味着你需要直接修改输入的二维矩阵.请不要 使用另一个矩阵来旋转图像.示例 1 ...
- leetcode —— 48. 旋转图像
给定一个 n × n 的二维矩阵表示一个图像. 将图像顺时针旋转 90 度. 说明: 你必须在原地旋转图像,这意味着你需要直接修改输入的二维矩阵.请不要使用另一个矩阵来旋转图像. 示例 1: 示例 2 ...
- C++ 链表 leetcode习题总结
链表的实现 struct TreeNode {* int val;* TreeNode *left;* TreeNode *right;* TreeNode() : val(0), left(null ...
- 20191026(补):(leetcode习题)最长的斐波那契子序列的长度
最长的斐波那契子序列的长度 题目 大致思路 代码实现 题目 给定一个严格递增的正整数数组形成序列,找到 A 中最长的斐波那契式的子序列的长度.如果一个不存在,返回 0 . 两个示例: 输入: [1,2 ...
- 20191023:(leetcode习题)最大连续1的个数 III
最大连续1的个数 III 题目 大致思路 代码实现 题目 给定一个由若干 0 和 1 组成的数组 A,我们最多可以将 K 个值从 0 变成 1 .返回仅包含 1 的最长(连续)子数组的长度. 输入:A ...
- 20191021:(leetcode习题)乘积小于K的子数组
乘积小于K的子数组 题目 大致思路 代码实现 题目 给定一个正整数数组 nums.找出该数组内乘积小于 k 的连续的子数组的个数. 输入: nums = [10,5,2,6], k = 100 输出: ...
- 20191019:(leetcode习题)第K个语法符号
第K个语法符号 题目 大致思路 代码实现 题目 在第一行我们写上一个 0.接下来的每一行,将前一行中的0替换为01,1替换为10. 给定行数 N 和序数 K,返回第 N 行中第 K个字符.(K从1开始 ...
最新文章
- rundeck入门-初步操作
- CocoaPod 使用之后知后觉
- girton college map
- LLBL Gen Pro 设计器使用指南
- 启动docker容器时报错:iptables failed: iptables --wait -t nat -A DOCKER -p tcp -d 0/0 --dport 5000 -j DNAT -
- java 写文件 异常 磁盘空间满_系统磁盘空间满的一个问题
- Spring Boot 面试题
- 查询长期未登录AD的用户
- 解决 Linux 端口被占用问题
- 一个有趣的.net程序死锁问题
- mysql查询条件中使用 或 !-的问题
- I2C总线协议原理介绍
- G.703接口和E1接口区别
- mysql translate 函数_详解Oracle中的translate函数和replace函数
- PVE7.2-3直通独显 nvidia 1080ti
- 安卓Android手机汽车租赁系统app毕业设计
- 下载安装使用Canal
- 利用Wifidog实现微信wifi连接以及自写认证服务器
- 谷歌,高德,必应地图中英文显示
- 使用nid命令修改 db name 及 dbid