旋转图像-c语言,时间复杂度哦o(n)空间复杂度o(1)
语言 时间 图像 空间 旋转 复杂度
2023-09-14 09:06:53 时间
旋转图像-c语言,时间复杂度哦o(n)空间复杂度o(1)
给定一个 n × n 的二维矩阵 matrix 表示一个图像。请你将图像顺时针旋转 90 度。
你必须在 原地 旋转图像,这意味着你需要直接修改输入的二维矩阵。请不要 使用另一个矩阵来旋转图像。
输入:matrix = [[1,2,3],[4,5,6],[7,8,9]]
输出:[[7,4,1],[8,5,2],[9,6,3]]
输入: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]]
解题代码如下,下面这个解题代码还是很有水平的,感兴趣的可以学习学习:
void rotate(int** matrix, int matrixSize, int* matrixColSize){
int t;
int i,j;
for(i=0;i<matrixSize;i++){
for(j=i;j<matrixSize-i-1;j++){
printf("%d %d ",i,j);
t=matrix[i][j];
int num=3;
int x=i,y=j;
while(num--){
printf("x y %d %d ",x,y);
matrix[x][y]=matrix[matrixSize-y-1][x];
int p=x;
x=matrixSize-y-1;
y=p;
}
matrix[x][y]=t;
}
}
}
相关文章
- R语言实现金融数据的时间序列分析及建模
- 利用R语言制作出漂亮的交互数据可视化
- Go 语言机制之逃逸分析
- 【JDK】Java语言中URL和URLConnection类的介绍及其相关方法
- Python语言学习:利用python语言实现调用内部命令(python调用Shell脚本)—命令提示符cmd的几种方法
- Python:python语言中与时间有关的库函数简介、安装、使用方法(获取当前时间/计算程序块前后运行时间/模型训练时间或耗费时间)之详细攻略
- Python:Python语言下载库或包的常见whl文件集合/whl集合
- 【智能算法】基于BP网络的语言识别
- 【DL】第 6 章:语言建模
- 1899. 合并若干三元组以形成目标三元组-c语言-贪心算法+标记数组
- 买票需要的时间-c语言
- 从二叉树一个节点到另一个节点每一步的方向-c语言解决
- 有效的山脉数组-c语言
- 最长的斐波那契子序列的长度-c语言哈希表解决(提升时间效率)
- 最大兼容性评分和-c语言
- Go语言并发与并行学习笔记(二)