- 给你一幅由 N × N 矩阵表示的图像,其中每个像素的大小为 4 字节。请你设计一种算法,将图像旋转 90 度。
不占用额外内存空间能否做到?
解题思路:
与自己想法基本一致,通过下标{i,j}的变化交换元素,通过for循环实现
注意:为了不占用额外内存空间,需要将新分配的内存释放.
JAVA
class Solution {
public void rotate(int[][] matrix) {
int [][] ans=new int[matrix.length][matrix[0].length];
int len=matrix.length;
for(int i=0;i
2 编写一种算法,若M × N矩阵中某个元素为0,则将其所在的行与列清零
解题思路:首先遍历所有元素,查找元素为0的元素的位置,将该位置定位;
其次,分别按照行列的查找方式,将所在的行列所在的元素变为0;
难点:对某的元素的定位方式 x[i] y[j]
class Solution {
public void setZeroes(int[][] matrix) {
int m=matrix.length; //行
int n=matrix[0].length; //列
boolean [] y=new boolean[m];
boolean [] x=new boolean[n];
for(int i=0;i 


